Version: (using KDE KDE 3.5.7) Installed from: Gentoo Packages OS: Linux crashed when I clicked on send to send the message I composed
[?1034hUsing host libthread_db library "/lib/libthread_db.so.1". `system-supplied DSO at 0xffffe000' has disappeared; keeping its symbols. [Thread debugging using libthread_db enabled] [New Thread -1240332624 (LWP 5101)] [New Thread -1279501408 (LWP 5247)] [New Thread -1271108704 (LWP 5246)] [New Thread -1262716000 (LWP 5245)] [New Thread -1254323296 (LWP 5244)] [KCrash handler] #6 0xb5934353 in MessageComposer::emitDone (this=0x965d8c0, b=false) at messagecomposer.cpp:364 #7 0xb5934418 in MessageComposer::doNextJob (this=0x965d8c0) at messagecomposer.cpp:352 #8 0xb5b0f955 in MessageComposer::applyChanges (this=0x965d8c0, disableCrypto=false) at messagecomposer.cpp:333 #9 0xb5b0fb7f in KMComposeWin::applyChanges (this=0xac8b4a8, dontSignNorEncrypt=false, dontDisable=false) at kmcomposewin.cpp:2219 #10 0xb5b3aa42 in KMComposeWin::doSend (this=0xac8b4a8, method=KMail::MessageSender::SendImmediate, saveIn=KMComposeWin::None) at kmcomposewin.cpp:3958 #11 0xb5b3b23a in KMComposeWin::slotSendNow (this=0xac8b4a8) at kmcomposewin.cpp:4131 #12 0xb5b3b7c7 in KMComposeWin::qt_invoke (this=0xac8b4a8, _id=81, _o=0xbfbab19c) at kmcomposewin.moc:442 #13 0xb6458a5f in QObject::activate_signal (this=0xac8b928, clist=0xadd61d8, o=0xbfbab19c) at qobject.cpp:2356 #14 0xb64597f8 in QObject::activate_signal (this=0xac8b928, signal=2) at qobject.cpp:2325 #15 0xb6eff9be in KAction::activated (this=0xac8b928) at kaction.moc:176 #16 0xb6ff38a1 in KAction::slotActivated (this=0xac8b928) at kaction.cpp:1102 #17 0xb6ff2fbf in KAction::qt_invoke (this=0xac8b928, _id=15, _o=0xbfbab2ec) at kaction.moc:218 #18 0xb6ff320b in KActionMenu::qt_invoke (this=0xac8b928, _id=15, _o=0xbfbab2ec) at kactionclasses.moc:1012 #19 0xb6458b8c in QObject::activate_signal (this=0xadcbe90, clist=0xadcc378, o=0xbfbab2ec) at qobject.cpp:2380 #20 0xb64597f8 in QObject::activate_signal (this=0xadcbe90, signal=4) at qobject.cpp:2325 #21 0xb68604cf in QButton::clicked (this=0xadcbe90) at moc_qbutton.cpp:152 #22 0xb650d508 in QButton::mouseReleaseEvent (this=0xadcbe90, e=0xbfbab7e4) at qbutton.cpp:836 #23 0xb6f71168 in KToolBarButton::mouseReleaseEvent (this=0xadcbe90, e=0xbfbab7e4) at ktoolbarbutton.cpp:472 #24 0xb6499727 in QWidget::event (this=0xadcbe90, e=0xbfbab7e4) at qwidget.cpp:4677 #25 0xb6f7357e in KToolBarButton::event (this=0xadcbe90, e=0xbfbab7e4) at ktoolbarbutton.cpp:651 #26 0xb63e41eb in QApplication::internalNotify (this=0xbfbac5fc, receiver=0xadcbe90, e=0xbfbab7e4) at qapplication.cpp:2635 #27 0xb63e64e9 in QApplication::notify (this=0xbfbac5fc, receiver=0xadcbe90, e=0xbfbab7e4) at qapplication.cpp:2421 #28 0xb6cceb54 in KApplication::notify (this=0xbfbac5fc, receiver=0xadcbe90, event=0xbfbab7e4) at kapplication.cpp:550 #29 0xb636dd25 in QApplication::sendSpontaneousEvent (receiver=0xadcbe90, event=0xbfbab7e4) at qapplication.h:499 #30 0xb636c986 in QETWidget::translateMouseEvent (this=0xadcbe90, event=0xbfbabc88) at qapplication_x11.cpp:4298 #31 0xb636ab1c in QApplication::x11ProcessEvent (this=0xbfbac5fc, event=0xbfbabc88) at qapplication_x11.cpp:3449 #32 0xb638393e in QEventLoop::processEvents (this=0x811c628, flags=4) at qeventloop_x11.cpp:192 #33 0xb6402205 in QEventLoop::enterLoop (this=0x811c628) at qeventloop.cpp:198 #34 0xb63e5e2d in QApplication::enter_loop (this=0xbfbac5fc) at qapplication.cpp:2793 #35 0xb5b0fe13 in KMComposeWin::autoSaveMessage (this=0xac8b4a8) at kmcomposewin.cpp:720 #36 0xb5b3c06e in KMComposeWin::qt_invoke (this=0xac8b4a8, _id=147, _o=0xbfbac00c) at kmcomposewin.moc:508 #37 0xb6458a5f in QObject::activate_signal (this=0x887cc40, clist=0xad3be68, o=0xbfbac00c) at qobject.cpp:2356 #38 0xb64597f8 in QObject::activate_signal (this=0x887cc40, signal=2) at qobject.cpp:2325 #39 0xb68588e6 in QTimer::timeout (this=0x887cc40) at moc_qtimer.cpp:82 #40 0xb6487365 in QTimer::event (this=0x887cc40, e=0xbfbac368) at qtimer.cpp:219 #41 0xb63e41eb in QApplication::internalNotify (this=0xbfbac5fc, receiver=0x887cc40, e=0xbfbac368) at qapplication.cpp:2635 #42 0xb63e6163 in QApplication::notify (this=0xbfbac5fc, receiver=0x887cc40, e=0xbfbac368) at qapplication.cpp:2358 #43 0xb6cceb54 in KApplication::notify (this=0xbfbac5fc, receiver=0x887cc40, event=0xbfbac368) at kapplication.cpp:550 #44 0xb782d43e in QApplication::sendEvent (receiver=0x887cc40, event=0xbfbac368) at qapplication.h:496 #45 0xb63d4fc0 in QEventLoop::activateTimers (this=0x811c628) at qeventloop_unix.cpp:556 #46 0xb63843ab in QEventLoop::processEvents (this=0x811c628, flags=4) at qeventloop_x11.cpp:389 #47 0xb6402205 in QEventLoop::enterLoop (this=0x811c628) at qeventloop.cpp:198 #48 0xb6402026 in QEventLoop::exec (this=0x811c628) at qeventloop.cpp:145 #49 0xb63e5eaf in QApplication::exec (this=0xbfbac5fc) at qapplication.cpp:2758 #50 0x0806594d in main (argc=189690280, argv=0x94e1e20) at main.cpp:163
Does this happen every time you try to send a message or only under certain circumstances? Do you have any steps to reliable reproduce this crash?
I can not reproduce the crash. If it occurs again I will let you know.
Now I composed a new, long message, and a crash occured again when I clicked on the send button. See the new backtrace below. I don't know if it matters, but when I upgraded kmail, I did not upgrade the whole KDE system, I am using the Gentoo portage dependencies of KDE components. So I feel there is a small chance that the crash is related to mixing minor vesions of KDE on my system, although Gentoo claims that it knows what depends on what in KDE. [?1034hUsing host libthread_db library "/lib/libthread_db.so.1". `system-supplied DSO at 0xffffe000' has disappeared; keeping its symbols. [Thread debugging using libthread_db enabled] [New Thread -1240140112 (LWP 5216)] [New Thread -1279308896 (LWP 5321)] [New Thread -1270916192 (LWP 5320)] [New Thread -1262523488 (LWP 5319)] [New Thread -1254130784 (LWP 5318)] [KCrash handler] #6 0xe814ec83 in ?? () #7 0xb596335b in MessageComposer::emitDone (this=0xadb9740, b=false) at messagecomposer.cpp:364 #8 0xb5963418 in MessageComposer::doNextJob (this=0xadb9740) at messagecomposer.cpp:352 #9 0xb5b3e955 in MessageComposer::applyChanges (this=0xadb9740, disableCrypto=false) at messagecomposer.cpp:333 #10 0xb5b3eb7f in KMComposeWin::applyChanges (this=0xad75de0, dontSignNorEncrypt=false, dontDisable=false) at kmcomposewin.cpp:2219 #11 0xb5b69a42 in KMComposeWin::doSend (this=0xad75de0, method=KMail::MessageSender::SendImmediate, saveIn=KMComposeWin::None) at kmcomposewin.cpp:3958 #12 0xb5b6a23a in KMComposeWin::slotSendNow (this=0xad75de0) at kmcomposewin.cpp:4131 #13 0xb5b6a7c7 in KMComposeWin::qt_invoke (this=0xad75de0, _id=81, _o=0xbfdd946c) at kmcomposewin.moc:442 #14 0xb6487a5f in QObject::activate_signal (this=0x949c050, clist=0x949da60, o=0xbfdd946c) at qobject.cpp:2356 #15 0xb64887f8 in QObject::activate_signal (this=0x949c050, signal=2) at qobject.cpp:2325 #16 0xb6f2e9be in KAction::activated (this=0x949c050) at kaction.moc:176 #17 0xb70228a1 in KAction::slotActivated (this=0x949c050) at kaction.cpp:1102 #18 0xb7021fbf in KAction::qt_invoke (this=0x949c050, _id=15, _o=0xbfdd95bc) at kaction.moc:218 #19 0xb702220b in KActionMenu::qt_invoke (this=0x949c050, _id=15, _o=0xbfdd95bc) at kactionclasses.moc:1012 #20 0xb6487b8c in QObject::activate_signal (this=0xadcf5c8, clist=0xadcfab0, o=0xbfdd95bc) at qobject.cpp:2380 #21 0xb64887f8 in QObject::activate_signal (this=0xadcf5c8, signal=4) at qobject.cpp:2325 #22 0xb688f4cf in QButton::clicked (this=0xadcf5c8) at moc_qbutton.cpp:152 #23 0xb653c508 in QButton::mouseReleaseEvent (this=0xadcf5c8, e=0xbfdd9ab4) at qbutton.cpp:836 #24 0xb6fa0168 in KToolBarButton::mouseReleaseEvent (this=0xadcf5c8, e=0xbfdd9ab4) at ktoolbarbutton.cpp:472 #25 0xb64c8727 in QWidget::event (this=0xadcf5c8, e=0xbfdd9ab4) at qwidget.cpp:4677 #26 0xb6fa257e in KToolBarButton::event (this=0xadcf5c8, e=0xbfdd9ab4) at ktoolbarbutton.cpp:651 #27 0xb64131eb in QApplication::internalNotify (this=0xbfdda8cc, receiver=0xadcf5c8, e=0xbfdd9ab4) at qapplication.cpp:2635 #28 0xb64154e9 in QApplication::notify (this=0xbfdda8cc, receiver=0xadcf5c8, e=0xbfdd9ab4) at qapplication.cpp:2421 #29 0xb6cfdb54 in KApplication::notify (this=0xbfdda8cc, receiver=0xadcf5c8, event=0xbfdd9ab4) at kapplication.cpp:550 #30 0xb639cd25 in QApplication::sendSpontaneousEvent (receiver=0xadcf5c8, event=0xbfdd9ab4) at qapplication.h:499 #31 0xb639b986 in QETWidget::translateMouseEvent (this=0xadcf5c8, event=0xbfdd9f58) at qapplication_x11.cpp:4298 #32 0xb6399b1c in QApplication::x11ProcessEvent (this=0xbfdda8cc, event=0xbfdd9f58) at qapplication_x11.cpp:3449 #33 0xb63b293e in QEventLoop::processEvents (this=0x811b9a8, flags=4) at qeventloop_x11.cpp:192 #34 0xb6431205 in QEventLoop::enterLoop (this=0x811b9a8) at qeventloop.cpp:198 #35 0xb6414e2d in QApplication::enter_loop (this=0xbfdda8cc) at qapplication.cpp:2793 #36 0xb5b3ee13 in KMComposeWin::autoSaveMessage (this=0xad75de0) at kmcomposewin.cpp:720 #37 0xb5b6b06e in KMComposeWin::qt_invoke (this=0xad75de0, _id=147, _o=0xbfdda2dc) at kmcomposewin.moc:508 #38 0xb6487a5f in QObject::activate_signal (this=0x96f50a8, clist=0xad9a368, o=0xbfdda2dc) at qobject.cpp:2356 #39 0xb64887f8 in QObject::activate_signal (this=0x96f50a8, signal=2) at qobject.cpp:2325 #40 0xb68878e6 in QTimer::timeout (this=0x96f50a8) at moc_qtimer.cpp:82 #41 0xb64b6365 in QTimer::event (this=0x96f50a8, e=0xbfdda638) at qtimer.cpp:219 #42 0xb64131eb in QApplication::internalNotify (this=0xbfdda8cc, receiver=0x96f50a8, e=0xbfdda638) at qapplication.cpp:2635 #43 0xb6415163 in QApplication::notify (this=0xbfdda8cc, receiver=0x96f50a8, e=0xbfdda638) at qapplication.cpp:2358 #44 0xb6cfdb54 in KApplication::notify (this=0xbfdda8cc, receiver=0x96f50a8, event=0xbfdda638) at kapplication.cpp:550 #45 0xb785c43e in QApplication::sendEvent (receiver=0x96f50a8, event=0xbfdda638) at qapplication.h:496 #46 0xb6403fc0 in QEventLoop::activateTimers (this=0x811b9a8) at qeventloop_unix.cpp:556 #47 0xb63b33ab in QEventLoop::processEvents (this=0x811b9a8, flags=4) at qeventloop_x11.cpp:389 #48 0xb6431205 in QEventLoop::enterLoop (this=0x811b9a8) at qeventloop.cpp:198 #49 0xb6431026 in QEventLoop::exec (this=0x811b9a8) at qeventloop.cpp:145 #50 0xb6414eaf in QApplication::exec (this=0xbfdda8cc) at qapplication.cpp:2758 #51 0x0806594d in main (argc=152696784, argv=0x919fc40) at main.cpp:163
> I don't know if it matters, but when I upgraded kmail, I did not upgrade > the whole
*** Bug 147166 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 );