[Kst] [Bug 85733] closing kst imediatly after saving crashes

George Staikos staikos at kde.org
Mon Jul 26 02:12:54 CEST 2004


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
      
http://bugs.kde.org/show_bug.cgi?id=85733      
staikos kde org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |FIXED



------- Additional Comments From staikos kde org  2004-07-26 02:12 -------
CVS commit by staikos: 

- remove unused methods
- fix #85821 and #85733 - the same bug
      - it was an assertion failure, and this is the one place where
        KstApp::inst() can be null, in (app) destruction.  I'm not sure it's a
        good idea to be calling update methods from a destructor though.

CCMAIL: 85821-done bugs kde org, 85733-done bugs kde org


  M +0 -1      kst.cpp   1.196
  M +6 -22     kstviewwindow.cpp   1.32
  M +0 -14     kstviewwindow.h   1.17


--- kdeextragear-2/kst/kst/kst.cpp  #1.195:1.196
 @ -1243,5 +1243,4  @ void KstApp::updateDialogs() {
     changeFileDialog->updateChangeFileDialog();
     changeNptsDialog->updateChangeNptsDialog();
-    //filterListEditor->update();
     updateDataDialogs(false);
     vectorSaveDialog->init();

--- kdeextragear-2/kst/kst/kstviewwindow.cpp  #1.31:1.32
 @ -107,8 +107,4  @ KstViewWindow::KstViewWindow(QDomElement
 void KstViewWindow::commonConstructor() {
   config = kapp->config();
-  initStatusBar();
-  initActions();
-
-  readOptions();
 
   connect(this, SIGNAL(focusInEventOccurs( KMdiChildView*)), this, SLOT(slotActivated(KMdiChildView*)));
 @ -125,23 +121,11  @ void KstViewWindow::updateActions() {
 
 KstViewWindow::~KstViewWindow() {
-  assert(KstApp::inst());  // email George if you get this crash
   _view->release();
-  KstApp::inst()->updateDialogsForWindow();
-}
-
-
-void KstViewWindow::initActions() {
-}
-
-
-void KstViewWindow::initStatusBar() {
-}
-
-
-void KstViewWindow::saveOptions() {
-}
-
-
-void KstViewWindow::readOptions() {
+  KstApp *app = KstApp::inst(); // Can be null on exit - but then why do
+                                // we even need to be calling this function
+                                // here?  It seems wrong to me.
+  if (app) {
+    app->updateDialogsForWindow();
+  }
 }
 

--- kdeextragear-2/kst/kst/kstviewwindow.h  #1.16:1.17
 @ -53,18 +53,4  @ class KstViewWindow : public KMdiChildVi
 
   protected:
-    /** save options to the configuration file
-     *  Geometry, Toolbar status, Statusbar status */
-    void saveOptions();
-
-    /** read options from configuration file
-     *  Geometry, Toolbar status, Statusbar status */
-    void readOptions();
-
-    /** setup kde2 actions and build the GUI */
-    void initActions();
-
-    /** sets up the statusbar for the main window */
-    void initStatusBar();
-
     /** saves the window properties for each open window during session
      * end to the session config file, including saving the currently



More information about the Kst mailing list