summaryrefslogtreecommitdiff
authordrw <drw>2003-03-19 23:37:49 (UTC)
committer drw <drw>2003-03-19 23:37:49 (UTC)
commitdbb584139c579e55cf340eaed5eb873ecb69baf5 (patch) (unidiff)
tree9f616be06919da82a49bce071c83537ffd4ba82f
parenta83c7aed577b15e23a8baf7c21af61f4b40ffbb0 (diff)
downloadopie-dbb584139c579e55cf340eaed5eb873ecb69baf5.zip
opie-dbb584139c579e55cf340eaed5eb873ecb69baf5.tar.gz
opie-dbb584139c579e55cf340eaed5eb873ecb69baf5.tar.bz2
Fix for bug #733
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/sysinfo/processinfo.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/noncore/settings/sysinfo/processinfo.cpp b/noncore/settings/sysinfo/processinfo.cpp
index 2232771..1de1a19 100644
--- a/noncore/settings/sysinfo/processinfo.cpp
+++ b/noncore/settings/sysinfo/processinfo.cpp
@@ -140,62 +140,66 @@ void ProcessInfo::updateData()
140 QString processtime = QString::number( ( utime + stime ) / 100 ); 140 QString processtime = QString::number( ( utime + stime ) / 100 );
141 processtime = processtime.rightJustify( 9, ' ' ); 141 processtime = processtime.rightJustify( 9, ' ' );
142 fclose( procfile ); 142 fclose( procfile );
143 143
144 newitem = new QListViewItem( ProcessView, processnum, processcmd, processstatus, processtime ); 144 newitem = new QListViewItem( ProcessView, processnum, processcmd, processstatus, processtime );
145 if ( processnum == selectedpid ) 145 if ( processnum == selectedpid )
146 { 146 {
147 selecteditem = newitem; 147 selecteditem = newitem;
148 } 148 }
149 } 149 }
150 } 150 }
151 } 151 }
152 ProcessView->setCurrentItem( selecteditem ); 152 ProcessView->setCurrentItem( selecteditem );
153 } 153 }
154 154
155 delete proclist; 155 delete proclist;
156 delete procdir; 156 delete procdir;
157} 157}
158 158
159void ProcessInfo::slotSendClicked() 159void ProcessInfo::slotSendClicked()
160{ 160{
161 QListViewItem *currprocess = ProcessView->currentItem(); 161 QListViewItem *currprocess = ProcessView->currentItem();
162 if ( !currprocess ) 162 if ( !currprocess )
163 { 163 {
164 return; 164 return;
165 } 165 }
166 166
167 QString capstr = tr( "You really want to send\n" ); 167 QString capstr = tr( "You really want to send\n" );
168 capstr.append( SignalCB->currentText() ); 168 capstr.append( SignalCB->currentText() );
169 capstr.append( "\nto this process?" ); 169 capstr.append( "\nto this process?" );
170 170
171 171
172 if ( QMessageBox::warning( this, currprocess->text( 1 ), capstr, 172 if ( QMessageBox::warning( this, currprocess->text( 1 ), capstr,
173 QMessageBox::Yes | QMessageBox::Default, QMessageBox::No | QMessageBox::Escape ) == QMessageBox::Yes ) 173 QMessageBox::Yes | QMessageBox::Default, QMessageBox::No | QMessageBox::Escape ) == QMessageBox::Yes )
174 { 174 {
175 QString sigstr = SignalCB->currentText(); 175 currprocess = ProcessView->currentItem();
176 sigstr.truncate(2); 176 if ( currprocess )
177 int sigid = sigstr.toUInt(); 177 {
178 kill( currprocess->text( 0 ).stripWhiteSpace().toUInt(), sigid ); 178 QString sigstr = SignalCB->currentText();
179 sigstr.truncate(2);
180 int sigid = sigstr.toUInt();
181 kill( currprocess->text( 0 ).stripWhiteSpace().toUInt(), sigid );
182 }
179 } 183 }
180 184
181} 185}
182 186
183void ProcessInfo::viewProcess( QListViewItem *process ) 187void ProcessInfo::viewProcess( QListViewItem *process )
184{ 188{
185 QString pid= process->text( 0 ).stripWhiteSpace(); 189 QString pid= process->text( 0 ).stripWhiteSpace();
186 QString command = process->text( 1 ); 190 QString command = process->text( 1 );
187 ProcessDtl->setCaption( pid + " - " + command ); 191 ProcessDtl->setCaption( pid + " - " + command );
188 FILE *statfile = fopen( ( QString ) ( "/proc/" + pid + "/status"), "r"); 192 FILE *statfile = fopen( ( QString ) ( "/proc/" + pid + "/status"), "r");
189 if ( statfile ) 193 if ( statfile )
190 { 194 {
191 char line[81]; 195 char line[81];
192 fgets( line, 81, statfile ); 196 fgets( line, 81, statfile );
193 ProcessDtl->detailView->setText( line ); 197 ProcessDtl->detailView->setText( line );
194 while ( fgets( line, 81, statfile ) ) 198 while ( fgets( line, 81, statfile ) )
195 { 199 {
196 ProcessDtl->detailView->append( line ); 200 ProcessDtl->detailView->append( line );
197 } 201 }
198 fclose( statfile ); 202 fclose( statfile );
199 } 203 }
200 ProcessDtl->showMaximized(); 204 ProcessDtl->showMaximized();
201} 205}