[Kst] kdeextragear-2/kst/kst

George Staikos staikos at kde.org
Wed Apr 6 06:38:44 CEST 2005


CVS commit by staikos: 

update slave vectors.  however it was also discovered that this code does calls
in the wrong thread sometimes - a crash waiting to happen.  Needs to be fixed.


  M +15 -7     ksteventmonitorentry.cpp   1.39


--- kdeextragear-2/kst/kst/ksteventmonitorentry.cpp  #1.38:1.39
@@ -190,13 +190,9 @@ KstObject::UpdateType EventMonitorEntry:
 
   if (xv && yv) {
-    bool rc;
-
-    rc = xv->resize(ns);
-    if (rc) {
+    if (xv->resize(ns)) {
       pdRawValuesX = xv->value();
     }
 
-    rc = yv->resize(ns);
-    if (rc) {
+    if (yv->resize(ns)) {
       pdRawValuesY = yv->value();
     }
@@ -230,4 +226,14 @@ KstObject::UpdateType EventMonitorEntry:
   }
 
+  if (xv) {
+    xv->setDirty();
+    xv->update(update_counter);
+  }
+
+  if (yv) {
+    yv->setDirty();
+    yv->update(update_counter);
+  }
+
   return setLastUpdateResult(retVal);
 }
@@ -295,4 +301,5 @@ void EventMonitorEntry::logImmediately( 
 
     if( _bLogEMail && !_strEMailRecipients.isEmpty() ) {
+      // FIXME: wrong thread - can crash (QStrings unguarded, at best)
       EMailThread* pThread = new EMailThread(_strEMailRecipients,
                               i18n("Kst Event Monitoring Notification"), str);
@@ -301,4 +308,5 @@ void EventMonitorEntry::logImmediately( 
 
     if (_bLogELOG) {
+      // FIXME: wrong thread - can crash
       KstApp::inst()->EventELOGSubmitEntry(str);
     }




More information about the Kst mailing list