Bug 90671 - Crash when closing from system tray and i did not check "not show anymore"
Summary: Crash when closing from system tray and i did not check "not show anymore"
Status: RESOLVED FIXED
Alias: None
Product: akregator
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-10-02 21:30 UTC by Albert Astals Cid
Modified: 2004-10-07 22:41 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Albert Astals Cid 2004-10-02 21:30:44 UTC
Version:           1.0-beta6 "Bezerkus" (using KDE 3.3.89 (CVS >= 20040820), compiled sources)
Compiler:          gcc version 3.4.1 (Mandrakelinux 10.1 3.4.1-4mdk)
OS:                Linux (i686) release 2.6.8.1-11mdk

How to reproduce
 - open akregator
 - press [x]
 - get the "Docking in system tray" dialog, and do NOT check the "not show anymore" mark
 - Use RMB on systray icon an quit

I get that backtrace
Using host libthread_db library "/lib/tls/libthread_db.so.1".
[Thread debugging using libthread_db enabled]
[New Thread 1096627680 (LWP 19149)]
[KCrash handler]

#7  0x08258e30 in ?? ()
#8  0x0805861a in aKregator::queryClose (this=0x80d2c58) at akregator.cpp:407
#9  0x40530808 in KMainWindow::closeEvent ()
   from /home/kdecvs/instalado/lib/libkdeui.so.4
#10 0x40c50e24 in QWidget::event () from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#11 0x40d0939a in QMainWindow::event ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#12 0x40bbbf94 in QApplication::internalNotify ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#13 0x40bbc17d in QApplication::notify ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#14 0x40746fa3 in KApplication::notify ()
   from /home/kdecvs/instalado/lib/libkdecore.so.4
#15 0x40c503e0 in QWidget::close () from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#16 0x40f606bd in QWidget::qt_invoke ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#17 0x40f6eb4c in QMainWindow::qt_invoke ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#18 0x40531573 in KMainWindow::qt_invoke ()
   from /home/kdecvs/instalado/lib/libkdeui.so.4
#19 0x40044ba5 in KParts::MainWindow::qt_invoke ()
   from /home/kdecvs/instalado/lib/libkparts.so.2
#20 0x08059286 in aKregator::qt_invoke (this=0x80d2c58, _id=33, _o=0xbfffe900)
    at akregator.moc:271
#21 0x40c1bb33 in QObject::activate_signal ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#22 0x40c1c253 in QObject::activate_signal ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#23 0x404ca0d5 in KAction::activated ()
   from /home/kdecvs/instalado/lib/libkdeui.so.4
#24 0x404ca72b in KAction::slotActivated ()
   from /home/kdecvs/instalado/lib/libkdeui.so.4
#25 0x404ca17c in KAction::qt_invoke ()
   from /home/kdecvs/instalado/lib/libkdeui.so.4
#26 0x40c1bbb0 in QObject::activate_signal ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#27 0x40f5d864 in QSignal::signal ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#28 0x40c34340 in QSignal::activate ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#29 0x40d1c71d in QPopupMenu::mouseReleaseEvent ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#30 0x40c50f67 in QWidget::event () from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#31 0x40bbbf94 in QApplication::internalNotify ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#32 0x40bbc23f in QApplication::notify ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#33 0x40746fa3 in KApplication::notify ()
   from /home/kdecvs/instalado/lib/libkdecore.so.4
#34 0x40b5b920 in QETWidget::translateMouseEvent ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#35 0x40b59bc6 in QApplication::x11ProcessEvent ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#36 0x40b6c068 in QEventLoop::processEvents ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#37 0x40bd10bc in QEventLoop::enterLoop ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#38 0x40bd1014 in QEventLoop::exec ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#39 0x40bbb1c0 in QApplication::exec ()
   from /home/kdecvs/qt-copy/lib/libqt-mt.so.3
#40 0x080556b6 in main (argc=1, argv=0xbffff724) at main.cpp:96
Comment 1 Teemu Rytilahti 2004-10-07 22:41:55 UTC
CVS commit by rytilahti: 

Shutdown properly and crash no more, hopefully fixes #89172 too.
CCMAIL: 90671-done@bugs.kde.org
CCMAIL: 89172@bugs.kde.org


  M +3 -0      ChangeLog   1.66
  M +10 -10    src/akregator.cpp   1.65
  M +2 -1      src/akregator.h   1.26


--- kdenonbeta/akregator/src/akregator.cpp  #1.64:1.65
@@ -242,5 +242,5 @@ void aKregator::fileNew()
         w->loadPart();
         w->show();
-    };
+        }
 }
 
@@ -312,6 +311,5 @@ void aKregator::applyNewToolbarConfig()
 void aKregator::fileOpen()
 {
-    KURL url =
-        KFileDialog::getOpenURL( QString::null, QString::null, this );
+    KURL url = KFileDialog::getOpenURL( QString::null, QString::null, this );
 
     if (url.isEmpty() == false)
@@ -357,6 +355,6 @@ bool aKregator::queryExit()
         emit markAllFeedsRead();
 
+    static_cast<Akregator::aKregatorPart*>(m_part)->saveSettings();
 
-    Settings::writeConfig();
     return KParts::MainWindow::queryExit();
 }
@@ -406,14 +404,16 @@ bool aKregator::queryClose()
         KMessageBox::information(this, i18n( "<qt>Closing the main window will keep aKregator running in the system tray. Use 'Quit' from the 'File' menu to quit the application.<p><p><center><img source=\"systray_shot\"></center></p></qt>" ), i18n( "Docking in System Tray" ), "hideOnCloseInfo");
         hide();
-    }
     return false;
-
+    }
 }
 void aKregator::quitProgram()
 {
-     static_cast<Akregator::aKregatorPart*>(m_part)->saveSettings();
      m_quit = true;
-     close();
-     m_quit = false;
+     kapp->quit();
+     // what's this mess in here and is it needed for some reason? this change anyways fixes #90671 -tpr
+     //m_quit = true;
+     //close();
+     //m_quit = false;
+     //static_cast<Akregator::aKregatorPart*>(m_part)->saveSettings();
 }
 

--- kdenonbeta/akregator/src/akregator.h  #1.25:1.26
@@ -66,4 +66,5 @@ public:
     bool loadPart();
 
+    /** Loads standard feed file */
     void loadStandardFile();
 

--- kdenonbeta/akregator/ChangeLog  #1.65:1.66
@@ -16,4 +16,7 @@
        - added "Export Feeds" function to export the standard feed list -fo
        - Expiry support added -fo 
+      
+Bug fixes:
+#90671 - Shutdown properly hopefully fixes #89172 too -tpr
          
 Changes after 1.0b5: