Version: (using KDE KDE 3.3.0) Installed from: Compiled From Sources Compiler: gcc 3.3.3 OS: Linux Sometimes Kmail crashes when I close the app. I dont know how to reproduce the crash here the backstrace: [New Thread 16384 (LWP 17166)] [KCrash handler] #5 0x401ffa70 in QValueVectorPrivate<KMMessage*>::QValueVectorPrivate(QValueVectorPrivate<KMMessage*> const&) () from /opt/kde-3.3/lib/libkmailprivate.so.0 #6 0x401ff443 in QValueVector<KMMessage*>::detachInternal() () from /opt/kde-3.3/lib/libkmailprivate.so.0 #7 0x401e66e1 in KMComposeWin::deadLetter() () from /opt/kde-3.3/lib/libkmailprivate.so.0 #8 0x402d2fe3 in KMKernel::dumpDeadLetters() () from /opt/kde-3.3/lib/libkmailprivate.so.0 #9 0x402d4ee9 in KMKernel::qt_invoke(int, QUObject*) () from /opt/kde-3.3/lib/libkmailprivate.so.0 #10 0x419c45ca in QObject::activate_signal(QConnectionList*, QUObject*) () from /opt/kde-3.3/lib/libqt-mt.so.3 #11 0x419c440c in QObject::activate_signal(int) () from /opt/kde-3.3/lib/libqt-mt.so.3 #12 0x41cc3285 in QTimer::timeout() () from /opt/kde-3.3/lib/libqt-mt.so.3 #13 0x419e2d49 in QTimer::event(QEvent*) () from /opt/kde-3.3/lib/libqt-mt.so.3 #14 0x4196d28c in QApplication::internalNotify(QObject*, QEvent*) () from /opt/kde-3.3/lib/libqt-mt.so.3 #15 0x4196c8ba in QApplication::notify(QObject*, QEvent*) () from /opt/kde-3.3/lib/libqt-mt.so.3 #16 0x415163ee in KApplication::notify(QObject*, QEvent*) () from /opt/kde-3.3/lib/libkdecore.so.4 #17 0x4195d646 in QEventLoop::activateTimers() () from /opt/kde-3.3/lib/libqt-mt.so.3 #18 0x4191b477 in QEventLoop::processEvents(unsigned) () from /opt/kde-3.3/lib/libqt-mt.so.3 #19 0x4197ddcf in QEventLoop::enterLoop() () from /opt/kde-3.3/lib/libqt-mt.so.3 #20 0x4197dc84 in QEventLoop::exec() () from /opt/kde-3.3/lib/libqt-mt.so.3 #21 0x4196d4b0 in QApplication::exec() () from /opt/kde-3.3/lib/libqt-mt.so.3 #22 0x0804a6f0 in main ()
*** Bug 90667 has been marked as a duplicate of this bug. ***
*** Bug 93530 has been marked as a duplicate of this bug. ***
*** Bug 92709 has been marked as a duplicate of this bug. ***
*** Bug 92660 has been marked as a duplicate of this bug. ***
*** Bug 88093 has been marked as a duplicate of this bug. ***
Adjusting title to make it easier to find.
*** Bug 90157 has been marked as a duplicate of this bug. ***
I also have a crash on shutdown of the computer of Kmail. I do not know if it is for the same reason, here is the backtrace: Using host libthread_db library "/lib/tls/libthread_db.so.1". [Thread debugging using libthread_db enabled] [New Thread -1249015264 (LWP 2475)] [New Thread -1280746576 (LWP 2673)] [New Thread -1272357968 (LWP 2672)] [New Thread -1263969360 (LWP 2671)] [New Thread -1255580752 (LWP 2670)] [KCrash handler] #5 KMComposeWin::autoSaveMessage (this=0x85d5360) at /tmp/buildd/kdepim-3.5.1/build-tree/kdepim-3.5.1/kmail/kmcomposewin.cpp:696 #6 0xb7c95ded in KMComposeWin::qt_invoke (this=0x85d5360, _id=143, _o=0xbff99f8c) at kmcomposewin.moc:461 #7 0xb70e47ff in QObject::activate_signal () from /usr/lib/libqt-mt.so.3 #8 0xb70e5290 in QObject::activate_signal () from /usr/lib/libqt-mt.so.3 #9 0xb7474526 in QTimer::timeout () from /usr/lib/libqt-mt.so.3 #10 0xb7109741 in QTimer::event () from /usr/lib/libqt-mt.so.3 #11 0xb707b122 in QApplication::internalNotify () from /usr/lib/libqt-mt.so.3 #12 0xb707b314 in QApplication::notify () from /usr/lib/libqt-mt.so.3 #13 0xb777efbe in KApplication::notify (this=0xbff9a578, receiver=0x86a4de0, event=0xbff9a2d8) at kapplication.cpp:550 #14 0xb700c861 in QApplication::sendEvent () from /usr/lib/libqt-mt.so.3 #15 0xb706cbad in QEventLoop::activateTimers () from /usr/lib/libqt-mt.so.3 #16 0xb7020566 in QEventLoop::processEvents () from /usr/lib/libqt-mt.so.3 #17 0xb7093b01 in QEventLoop::enterLoop () from /usr/lib/libqt-mt.so.3 #18 0xb7093a26 in QEventLoop::exec () from /usr/lib/libqt-mt.so.3 #19 0xb7079c35 in QApplication::exec () from /usr/lib/libqt-mt.so.3 #20 0x0804a098 in main (argc=0, argv=0x0) at /tmp/buildd/kdepim-3.5.1/build-tree/kdepim-3.5.1/kmail/main.cpp:110 #21 0xb7844001 in __libc_start_main () from /lib/tls/libc.so.6 #22 0x08049e11 in _start () at ../sysdeps/i386/elf/start.S:119
*** Bug 103129 has been marked as a duplicate of this bug. ***
*** Bug 109256 has been marked as a duplicate of this bug. ***
*** Bug 98824 has been marked as a duplicate of this bug. ***
SVN commit 699554 by bvirlet: Fixes event loop bug. Credit goes to Dirk. BUG: 108312 BUG: 148700 BUG: 143003 BUG: 136365 BUG: 90467 Most probably closed: BUG: 143776 BUG: 147016 BUG: 137279 BUG: 136413 https://bugzilla.novell.com/show_bug.cgi?id=226462 M +10 -17 kmcomposewin.cpp M +1 -1 kmcomposewin.h --- branches/KDE/3.5/kdepim/kmail/kmcomposewin.cpp #699553:699554 @@ -709,16 +709,22 @@ if ( mAutoSaveTimer ) mAutoSaveTimer->stop(); + connect( this, SIGNAL( applyChangesDone( bool ) ), - this, SLOT( slotContinueAutoSave( bool ) ) ); + this, SLOT( slotContinueAutoSave() ) ); // This method is called when KMail crashed, so don't try signing/encryption // and don't disable controls because it is also called from a timer and // then the disabling is distracting. applyChanges( true, true ); // Don't continue before the applyChanges is done! - qApp->enter_loop(); +} +void KMComposeWin::slotContinueAutoSave() +{ + disconnect( this, SIGNAL( applyChangesDone( bool ) ), + this, SLOT( slotContinueAutoSave( bool ) ) ); + // Ok, it's done now - continue dead letter saving if ( mComposedMessages.isEmpty() ) { kdDebug(5006) << "Composing the message failed." << endl; @@ -761,16 +767,9 @@ } if ( autoSaveInterval() > 0 ) - mAutoSaveTimer->start( autoSaveInterval() ); + updateAutoSave(); } -void KMComposeWin::slotContinueAutoSave( bool ) -{ - disconnect( this, SIGNAL( applyChangesDone( bool ) ), - this, SLOT( slotContinueAutoSave( bool ) ) ); - qApp->exit_loop(); -} - //----------------------------------------------------------------------------- void KMComposeWin::slotView(void) { @@ -2193,18 +2192,12 @@ { kdDebug(5006) << "entering KMComposeWin::applyChanges" << endl; - if(!mMsg) { + if(!mMsg || mComposer) { kdDebug(5006) << "KMComposeWin::applyChanges() : mMsg == 0!\n" << endl; emit applyChangesDone( false ); return; } - if( mComposer ) { - kdDebug(5006) << "KMComposeWin::applyChanges() : applyChanges called twice" - << endl; - return; - } - // Make new job and execute it mComposer = new MessageComposer( this ); connect( mComposer, SIGNAL( done( bool ) ), --- branches/KDE/3.5/kdepim/kmail/kmcomposewin.h #699553:699554 @@ -780,7 +780,7 @@ void slotContinueDoSend( bool ); void slotContinuePrint( bool ); - void slotContinueAutoSave( bool ); + void slotContinueAutoSave(); void slotEncryptChiasmusToggled( bool );