Bug 351395 - Crash when the identity's "dictionary" setting is changed
Summary: Crash when the identity's "dictionary" setting is changed
Status: RESOLVED FIXED
Alias: None
Product: kmail2
Classification: Applications
Component: composer (show other bugs)
Version: unspecified
Platform: Gentoo Packages Linux
: NOR critical
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-08-17 13:30 UTC by Jan-Matthias Braun
Modified: 2015-10-15 13:36 UTC (History)
7 users (show)

See Also:
Latest Commit:
Version Fixed In: 5.0.2


Attachments
Moved the connect of the crashing slot back in code, so it could complete and the window opens. (1.26 KB, patch)
2015-09-27 10:47 UTC, Jan-Matthias Braun
Details
Similar patch, using the new api for KMComposerEditorNg. Caution! I don't know what I am doing, but it is not crashing on hitting "new mail". :-) (1.13 KB, patch)
2015-09-27 10:51 UTC, Jan-Matthias Braun
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jan-Matthias Braun 2015-08-17 13:30:17 UTC
When creating a new message after launching kmail, it crashes and ends.

If I (instead) start kmail and open the composer via reply to, or from command line with an e-Mail-Address as parameter, the composer opens and afterwards, I can use the "new message" action from the menu or the toolbar.

gdb shows a segfault

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7a81b55 in QAction::setEnabled(bool) () from /usr/lib64/libQt5Widgets.so.5
(gdb) back
#0  0x00007ffff7a81b55 in QAction::setEnabled(bool) () from /usr/lib64/libQt5Widgets.so.5
#1  0x00007fff8b7ec0f9 in KMComposeWin::slotEditorTextChanged (this=0x2b8a800)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kmail/editor/kmcomposewin.cpp:535
#2  0x00007fff8b835a0b in KMComposeWin::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90_build/kmail/moc_kmcomposewin.cpp:485
#3  0x00007ffff6ea6fb1 in QMetaObject::activate (sender=0x219a0f0, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=0x0)
    at kernel/qobject.cpp:3718
#4  0x00007ffff78cce95 in QTextEdit::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib64/libQt5Widgets.so.5
#5  0x00007ffff6ea6fb1 in QMetaObject::activate (sender=0x4afa790, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=0x0)
    at kernel/qobject.cpp:3718
#6  0x00007ffff78928dd in QWidgetTextControl::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib64/libQt5Widgets.so.5
#7  0x00007ffff7892c8b in QWidgetTextControl::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib64/libQt5Widgets.so.5
#8  0x00007ffff6ea70b4 in QMetaObject::activate (sender=sender@entry=0x4afa7b0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=1, 
    argv=argv@entry=0x0) at kernel/qobject.cpp:3733
#9  0x00007ffff6ea7667 in QMetaObject::activate (sender=sender@entry=0x4afa7b0, m=m@entry=0x7ffff760fae0 <QTextDocument::staticMetaObject>, 
    local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0) at kernel/qobject.cpp:3583
#10 0x00007ffff7546a43 in QTextDocument::contentsChanged (this=this@entry=0x4afa7b0) at .moc/moc_qtextdocument.cpp:378
#11 0x00007ffff72d7442 in contentsChanged (this=0x4aed6b0) at text/qtextdocument_p.cpp:1646
#12 QTextDocumentPrivate::finishEdit (this=0x4aed6b0) at text/qtextdocument_p.cpp:1238
#13 0x00007ffff72d786c in QTextDocumentPrivate::endEditBlock (this=<optimized out>) at text/qtextdocument_p.cpp:1193
#14 0x00007ffff72d794e in QTextDocumentPrivate::endEditBlock (this=<optimized out>) at text/qtextdocument_p.cpp:1179
#15 0x00007ffff731c22d in rehighlight (operation=QTextCursor::End, cursor=..., this=0x48adf20) at text/qsyntaxhighlighter.cpp:69
#16 QSyntaxHighlighter::rehighlight (this=<optimized out>) at text/qsyntaxhighlighter.cpp:368
#17 0x00007fff8be8544d in PimCommon::RichTextEditor::setSpellCheckingLanguage (this=0x219a0f0, _language=...)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/pimcommon/texteditor/richtexteditor/richtexteditor.cpp:616
#18 0x00007fff8b7e9eb3 in KMComposeWin::slotSpellCheckingLanguage (this=0x2b8a800, language=...)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kmail/editor/kmcomposewin.cpp:523
#19 0x00007ffff6ea68f6 in call (a=0x7fffffffa7d0, r=0x2b8a800, this=0x42f98b0) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#20 QMetaObject::activate (sender=0xa97810, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffffffa7d0) at kernel/qobject.cpp:3703
#21 0x00007fffef240242 in Sonnet::DictionaryComboBox::dictionaryChanged(QString const&) () from /usr/lib64/libKF5SonnetUi.so.5
#22 0x00007fffef2402fe in Sonnet::DictionaryComboBox::Private::slotDictionaryChanged(int) () from /usr/lib64/libKF5SonnetUi.so.5
#23 0x00007fffef2405a3 in Sonnet::DictionaryComboBox::setCurrentByDictionaryName(QString const&) () from /usr/lib64/libKF5SonnetUi.so.5
#24 0x00007fff8b7f2dc3 in KMComposeWin::readConfig (this=this@entry=0x2b8a800, reload=reload@entry=false)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kmail/editor/kmcomposewin.cpp:650
#25 0x00007fff8b805898 in KMComposeWin::KMComposeWin (this=this@entry=0x2b8a800, aMsg=..., lastSignState=lastSignState@entry=false, 
    lastEncryptState=lastEncryptState@entry=false, context=context@entry=KMail::Composer::New, id=id@entry=824152080, textSelection=..., customTemplate=..., 
    __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kmail/editor/kmcomposewin.cpp:458
#26 0x00007fff8b806681 in KMComposeWin::create (msg=..., lastSignState=lastSignState@entry=false, lastEncryptState=lastEncryptState@entry=false, 
    context=context@entry=KMail::Composer::New, identity=identity@entry=824152080, textSelection=..., customTemplate=...)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kmail/editor/kmcomposewin.cpp:216
#27 0x00007fff8b8066bc in KMail::makeComposer (msg=..., lastSignState=lastSignState@entry=false, lastEncryptState=lastEncryptState@entry=false, 
    context=context@entry=KMail::Composer::New, identity=identity@entry=824152080, textSelection=..., customTemplate=...)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kmail/editor/kmcomposewin.cpp:209
#28 0x00007fff8b6f83ad in KMKernel::newMessage (this=0x7a6a80, to=..., cc=..., bcc=..., hidden=<optimized out>, useFolderId=true, _attachURL=...)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kmail/kmkernel.cpp:915
#29 0x00007fff8b814dab in newMessage (attachURL=..., messageFile=..., useFolderId=<optimized out>, hidden=<optimized out>, bcc=..., cc=..., to=..., this=0x89b7a0)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90_build/kmail/kmailadaptor.cpp:69
#30 KmailAdaptor::qt_static_metacall (_o=_o@entry=0x89b7a0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=5, _a=_a@entry=0x7fffffffb670)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90_build/kmail/kmailadaptor.moc:296
#31 0x00007fff8b814fe3 in KmailAdaptor::qt_metacall (this=0x89b7a0, _c=QMetaObject::InvokeMetaMethod, _id=5, _a=0x7fffffffb670)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90_build/kmail/kmailadaptor.moc:356
#32 0x00007ffff3a0af1c in QDBusConnectionPrivate::deliverCall (this=this@entry=0x4e7710, object=object@entry=0x89b7a0, msg=..., metaTypes=..., slotIdx=10)
    at qdbusintegrator.cpp:979
#33 0x00007ffff3a0f628 in QDBusConnectionPrivate::activateCall (this=this@entry=0x4e7710, object=0x89b7a0, flags=flags@entry=273, msg=...) at qdbusintegrator.cpp:885
#34 0x00007ffff3a100d3 in QDBusConnectionPrivate::activateObject (this=this@entry=0x4e7710, node=..., msg=..., pathStartPos=pathStartPos@entry=6)
    at qdbusintegrator.cpp:1462
#35 0x00007ffff3a108e5 in QDBusConnectionPrivate::handleObjectCall (this=this@entry=0x4e7710, msg=...) at qdbusintegrator.cpp:1559
#36 0x00007ffff3a10c70 in QDBusConnectionPrivate::handleMessage (this=this@entry=0x4e7710, amsg=...) at qdbusintegrator.cpp:572
#37 0x00007ffff3a10e8a in QDBusConnectionPrivate::sendWithReplyLocal (this=this@entry=0x4e7710, message=...) at qdbusintegrator.cpp:2090
#38 0x00007ffff3a1153a in QDBusConnectionPrivate::sendWithReplyAsync (this=0x4e7710, message=..., receiver=receiver@entry=0x0, returnMethod=returnMethod@entry=0x0, 
    errorMethod=errorMethod@entry=0x0, timeout=<optimized out>) at qdbusintegrator.cpp:2125
#39 0x00007ffff39fe5e8 in QDBusConnection::asyncCall (this=this@entry=0x7645d0, message=..., timeout=<optimized out>) at qdbusconnection.cpp:595
#40 0x00007ffff3a1b5c2 in QDBusAbstractInterface::asyncCallWithArgumentList (this=this@entry=0x702710, method=..., args=...) at qdbusabstractinterface.cpp:509
#41 0x00007fffa0019f9b in newMessage (attachURL=..., messageFile=..., useFolderId=true, hidden=false, bcc=..., cc=..., to=..., this=0x702710)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90_build/kmail/kontactplugin/kmailinterface.h:75
#42 KMailPlugin::openComposer (this=<optimized out>, to=...) at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kmail/kontactplugin/kmail_plugin.cpp:153
#43 0x00007fffa001a38c in KMailPlugin::slotNewMail (this=<optimized out>)
    at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kmail/kontactplugin/kmail_plugin.cpp:159
#44 0x00007ffff6ea68f6 in call (a=0x7fffffffc120, r=0x71a100, this=0x6fcfc0) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#45 QMetaObject::activate (sender=0x784f10, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffffffc120) at kernel/qobject.cpp:3703
#46 0x00007ffff7a7a292 in QAction::triggered(bool) () from /usr/lib64/libQt5Widgets.so.5
#47 0x00007ffff7a819e8 in QAction::activate(QAction::ActionEvent) () from /usr/lib64/libQt5Widgets.so.5
#48 0x00007ffff7f83321 in trigger (this=<optimized out>) at /usr/include/qt5/QtWidgets/qaction.h:177
#49 Kontact::MainWindow::slotNewClicked (this=<optimized out>) at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kontact/src/mainwindow.cpp:758
#50 0x00007ffff6ea68f6 in call (a=0x7fffffffc2e0, r=0x5146c0, this=0x887860) at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#51 QMetaObject::activate (sender=0x76cc20, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffffffc2e0) at kernel/qobject.cpp:3703
#52 0x00007ffff7a7a292 in QAction::triggered(bool) () from /usr/lib64/libQt5Widgets.so.5
#53 0x00007ffff7a819e8 in QAction::activate(QAction::ActionEvent) () from /usr/lib64/libQt5Widgets.so.5
#54 0x00007ffff796d48d in QAbstractButtonPrivate::click() () from /usr/lib64/libQt5Widgets.so.5
#55 0x00007ffff796d5e4 in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libQt5Widgets.so.5
#56 0x00007ffff787c53a in QToolButton::mouseReleaseEvent(QMouseEvent*) () from /usr/lib64/libQt5Widgets.so.5
#57 0x00007ffff77afef7 in QWidget::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#58 0x00007ffff789a7ad in QToolButton::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#59 0x00007ffff7a88b7c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#60 0x00007ffff7a8994e in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#61 0x00007ffff6e76d3b in QCoreApplication::notifyInternal (this=0x7fffffffd240, receiver=0x7df240, event=0x7fffffffc880) at kernel/qcoreapplication.cpp:965
#62 0x00007ffff7a8eb73 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) ()
   from /usr/lib64/libQt5Widgets.so.5
#63 0x00007ffff7817447 in QWidgetWindow::event(QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#64 0x00007ffff7a88b7c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#65 0x00007ffff7a89230 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#66 0x00007ffff6e76d3b in QCoreApplication::notifyInternal (this=0x7fffffffd240, receiver=receiver@entry=0x5bf460, event=event@entry=0x7fffffffcc20)
    at kernel/qcoreapplication.cpp:965
#67 0x00007ffff71c1603 in sendSpontaneousEvent (event=0x7fffffffcc20, receiver=0x5bf460) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:227
#68 QGuiApplicationPrivate::processMouseEvent (e=0x100c5f0) at kernel/qguiapplication.cpp:1790
#69 0x00007ffff71c3225 in QGuiApplicationPrivate::processWindowSystemEvent (e=e@entry=0x100c5f0) at kernel/qguiapplication.cpp:1582
#70 0x00007ffff71a67ef in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:608
#71 0x00007fffe9eaa520 in userEventSourceDispatch (source=<optimized out>) at eventdispatchers/qeventdispatcher_glib.cpp:70
#72 0x00007ffff1a1e92d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#73 0x00007ffff1a87058 in ?? () from /usr/lib64/libglib-2.0.so.0
#74 0x00007ffff1a1fdcc in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#75 0x00007ffff6ed0367 in QEventDispatcherGlib::processEvents (this=0x4c1960, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#76 0x00007ffff6e74532 in QEventLoop::exec (this=this@entry=0x7fffffffcfb0, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#77 0x00007ffff6e7c62c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1229
#78 0x0000000000404870 in main (argc=1, argv=0x7fffffffd388) at /var/tmp/portage/kde-apps/kdepim-15.07.90/work/kdepim-15.07.90/kontact/src/main.cpp:220


Reproducible: Always

Steps to Reproduce:
1. Start kmail
2. Say new-message, via shortcut, toolbar or menu


Actual Results:  
Kmail ends with a segfault.

Expected Results:  
The composer opens.

Running with plasma 5.4 beta, frameworks 5.13 and Applications 15.08 rc.
Comment 1 Jan-Matthias Braun 2015-08-27 07:31:50 UTC
It at least worked once, when a composer window was open was at start restored from a previous run.

I was able to just start hit reply and get a new window.

On the other hand, it seems to be that a specific time after closing the last composer window, I cannot open a new one from kontact (kmail) again. Then I have to again start a new composer by evoking kmail from the command line.
Comment 2 Jan-Matthias Braun 2015-08-28 10:54:22 UTC
Even when not closing the composer window, which was restored from a previous run, later I cannot open a new composer window.

And kontact just crashes when clicking on an e-Mail address in a header or body of an e-Mail.
The following backtrace was created with gdb in the latter case.

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff7a81b55 in QAction::setEnabled(bool) () from /usr/lib64/libQt5Widgets.so.5
(gdb) back
#0  0x00007ffff7a81b55 in QAction::setEnabled(bool) () from /usr/lib64/libQt5Widgets.so.5
#1  0x00007fff8b9780c9 in KMComposeWin::slotEditorTextChanged (this=0x5995f00)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/kmail/editor/kmcomposewin.cpp:535
#2  0x00007fff8b9c19db in KMComposeWin::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, 
    _a=<optimized out>) at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0_build/kmail/moc_kmcomposewin.cpp:485
#3  0x00007ffff6ea6fb1 in QMetaObject::activate (sender=0x59faaf0, signalOffset=<optimized out>, local_signal_index=<optimized out>, 
    argv=0x0) at kernel/qobject.cpp:3718
#4  0x00007ffff78cce95 in QTextEdit::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /usr/lib64/libQt5Widgets.so.5
#5  0x00007ffff6ea6fb1 in QMetaObject::activate (sender=0x59e9400, signalOffset=<optimized out>, local_signal_index=<optimized out>, 
    argv=0x0) at kernel/qobject.cpp:3718
#6  0x00007ffff78928dd in QWidgetTextControl::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) ()
   from /usr/lib64/libQt5Widgets.so.5
#7  0x00007ffff7892c8b in QWidgetTextControl::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib64/libQt5Widgets.so.5
#8  0x00007ffff6ea70b4 in QMetaObject::activate (sender=sender@entry=0x59e9420, signalOffset=<optimized out>, 
    local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0) at kernel/qobject.cpp:3733
#9  0x00007ffff6ea7667 in QMetaObject::activate (sender=sender@entry=0x59e9420, 
    m=m@entry=0x7ffff760fae0 <QTextDocument::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0)
    at kernel/qobject.cpp:3583
#10 0x00007ffff7546a43 in QTextDocument::contentsChanged (this=this@entry=0x59e9420) at .moc/moc_qtextdocument.cpp:378
#11 0x00007ffff72d7442 in contentsChanged (this=0x59e95a0) at text/qtextdocument_p.cpp:1646
#12 QTextDocumentPrivate::finishEdit (this=0x59e95a0) at text/qtextdocument_p.cpp:1238
#13 0x00007ffff72d786c in QTextDocumentPrivate::endEditBlock (this=<optimized out>) at text/qtextdocument_p.cpp:1193
#14 0x00007ffff72d794e in QTextDocumentPrivate::endEditBlock (this=<optimized out>) at text/qtextdocument_p.cpp:1179
#15 0x00007ffff731c22d in rehighlight (operation=QTextCursor::End, cursor=..., this=0x59e9e60) at text/qsyntaxhighlighter.cpp:69
#16 QSyntaxHighlighter::rehighlight (this=<optimized out>) at text/qsyntaxhighlighter.cpp:368
#17 0x00007fff8be8544d in PimCommon::RichTextEditor::setSpellCheckingLanguage (this=0x59faaf0, _language=...)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/pimcommon/texteditor/richtexteditor/richtexteditor.cpp:616
#18 0x00007fff8b975e83 in KMComposeWin::slotSpellCheckingLanguage (this=0x5995f00, language=...)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/kmail/editor/kmcomposewin.cpp:523
#19 0x00007ffff6ea68f6 in call (a=0x7fffffffb940, r=0x5995f00, this=0x59eec00)
    at ../../include/QtCore/../../src/corelib/kernel/qobject_impl.h:124
#20 QMetaObject::activate (sender=0x59a6120, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffffffb940)
    at kernel/qobject.cpp:3703
#21 0x00007fffef434242 in Sonnet::DictionaryComboBox::dictionaryChanged(QString const&) () from /usr/lib64/libKF5SonnetUi.so.5
#22 0x00007fffef4342fe in Sonnet::DictionaryComboBox::Private::slotDictionaryChanged(int) () from /usr/lib64/libKF5SonnetUi.so.5
#23 0x00007fffef4345a3 in Sonnet::DictionaryComboBox::setCurrentByDictionaryName(QString const&) () from /usr/lib64/libKF5SonnetUi.so.5
#24 0x00007fff8b97ed93 in KMComposeWin::readConfig (this=this@entry=0x5995f00, reload=reload@entry=false)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/kmail/editor/kmcomposewin.cpp:650
#25 0x00007fff8b991868 in KMComposeWin::KMComposeWin (this=this@entry=0x5995f00, aMsg=..., lastSignState=lastSignState@entry=false, 
    lastEncryptState=lastEncryptState@entry=false, context=context@entry=KMail::Composer::New, id=id@entry=824152080, textSelection=..., 
    customTemplate=..., __in_chrg=<optimized out>, __vtt_parm=<optimized out>)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/kmail/editor/kmcomposewin.cpp:458
#26 0x00007fff8b992651 in KMComposeWin::create (msg=..., lastSignState=lastSignState@entry=false, 
    lastEncryptState=lastEncryptState@entry=false, context=context@entry=KMail::Composer::New, identity=identity@entry=824152080, 
    textSelection=..., customTemplate=...)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/kmail/editor/kmcomposewin.cpp:216
#27 0x00007fff8b99268c in KMail::makeComposer (msg=..., lastSignState=lastSignState@entry=false, 
    lastEncryptState=lastEncryptState@entry=false, context=context@entry=KMail::Composer::New, identity=identity@entry=824152080, 
    textSelection=..., customTemplate=...)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/kmail/editor/kmcomposewin.cpp:209
#28 0x00007fff8b8da6e5 in KMail::Util::handleClickedURL (url=..., folder=...)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/kmail/util.cpp:115
#29 0x00007fff8b872835 in KMReaderWin::slotUrlClicked (this=<optimized out>, item=..., url=...)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/kmail/kmreaderwin.cpp:704
#30 0x00007fff8b9c380d in KMReaderWin::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, 
    _a=<optimized out>) at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0_build/kmail/moc_kmreaderwin.cpp:179
#31 0x00007ffff6ea6fb1 in QMetaObject::activate (sender=0x13ada40, signalOffset=<optimized out>, 
    local_signal_index=local_signal_index@entry=4, argv=argv@entry=0x7fffffffc810) at kernel/qobject.cpp:3718
#32 0x00007ffff6ea7667 in QMetaObject::activate (sender=<optimized out>, 
    m=m@entry=0x7fff8b1ace80 <MessageViewer::Viewer::staticMetaObject>, local_signal_index=local_signal_index@entry=4, 
    argv=argv@entry=0x7fffffffc810) at kernel/qobject.cpp:3583
#33 0x00007fff8b141f0a in MessageViewer::Viewer::urlClicked (this=<optimized out>, _t1=..., _t2=...)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0_build/messageviewer/moc_viewer.cpp:351
#34 0x00007fff8b145a9d in MessageViewer::Viewer::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, 
    _a=<optimized out>) at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0_build/messageviewer/moc_viewer.cpp:187
#35 0x00007ffff6ea6fb1 in QMetaObject::activate (sender=sender@entry=0x13b6a20, signalOffset=<optimized out>, 
    local_signal_index=local_signal_index@entry=3, argv=argv@entry=0x7fffffffc9c0) at kernel/qobject.cpp:3718
#36 0x00007ffff6ea7667 in QMetaObject::activate (sender=sender@entry=0x13b6a20, 
    m=m@entry=0x7fff8b1ace40 <MessageViewer::ViewerPrivate::staticMetaObject>, local_signal_index=local_signal_index@entry=3, 
    argv=argv@entry=0x7fffffffc9c0) at kernel/qobject.cpp:3583
#37 0x00007fff8b1421fa in MessageViewer::ViewerPrivate::urlClicked (this=this@entry=0x13b6a20, _t1=..., _t2=...)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0_build/messageviewer/moc_viewer_p.cpp:832
#38 0x00007fff8b092c1c in MessageViewer::ViewerPrivate::slotUrlOpen (this=0x13b6a20, url=...)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/messageviewer/viewer/viewer_p.cpp:2216
#39 0x00007fff8b146562 in MessageViewer::ViewerPrivate::qt_static_metacall (_o=0x13b6a20, _c=<optimized out>, _id=<optimized out>, 
    _a=<optimized out>) at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0_build/messageviewer/moc_viewer_p.cpp:519
#40 0x00007ffff6ea7d1a in QObject::event (this=0x13b6a20, e=<optimized out>) at kernel/qobject.cpp:1246
#41 0x00007ffff7a88b7c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#42 0x00007ffff7a89230 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQt5Widgets.so.5
#43 0x00007ffff6e76d3b in QCoreApplication::notifyInternal (this=0x7fffffffd220, receiver=0x13b6a20, event=event@entry=0x1bdbf90)
    at kernel/qcoreapplication.cpp:965
#44 0x00007ffff6e790b3 in sendEvent (event=0x1bdbf90, receiver=<optimized out>) at kernel/qcoreapplication.h:224
#45 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x45f5c0)
    at kernel/qcoreapplication.cpp:1593
#46 0x00007ffff6e79678 in QCoreApplication::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0)
    at kernel/qcoreapplication.cpp:1451
#47 0x00007ffff6ecff73 in postEventSourceDispatch (s=0x4c1470) at kernel/qeventdispatcher_glib.cpp:271
#48 0x00007ffff1a1b92d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#49 0x00007ffff1a84058 in ?? () from /usr/lib64/libglib-2.0.so.0
#50 0x00007ffff1a1cdcc in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#51 0x00007ffff6ed0367 in QEventDispatcherGlib::processEvents (this=0x4e1040, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#52 0x00007ffff6e74532 in QEventLoop::exec (this=this@entry=0x7fffffffcf90, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#53 0x00007ffff6e7c62c in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1229
#54 0x0000000000404870 in main (argc=1, argv=0x7fffffffd368)
    at /var/tmp/portage/kde-apps/kdepim-15.08.0/work/kdepim-15.08.0/kontact/src/main.cpp:220
Comment 3 bzhbok 2015-09-15 16:53:45 UTC
Probably the same bug : https://bugs.archlinux.org/task/46075
Comment 4 Jan-Matthias Braun 2015-09-16 09:10:37 UTC
Seems reasonable, the description matches and I see similar output in .xsession-errors:

log_templateparser: Identity found: 824152080
log_messageviewer: Node UNprocessed:  0x54bdb40
log_messageviewer: SET NODE:  0x54bdb40 true
log_messageviewer: Node processed:  "" "Content-Type: text/plain; charset=\"utf-8\""
log_templateparser: Command: REM=
log_templateparser: Command: -
log_templateparser: Command: BLANK
log_templateparser: No appropriate charset found.
log_messagecomposer: initalising autosave
QObject::connect: Cannot connect MessageComposer::RecipientLineNG::addRecipient(RecipientLineNG*,QString) to (null)::addRecipient(RecipientLineNG*,QString)
log_kmail: 
log_kmail: "kki"
*** KMail got signal 11 (Exiting)
log_kmail: current item 0 "Standard"
log_messagecomposer: Plain text
log_messagecomposer: Autosaving message
log_messagecomposer: Chosen charset "iso-8859-1"
log_messagecomposer: Done.
log_messagecomposer: Making text/plain
log_messagecomposer: Calling process.
log_messagecomposer: Settled on encoding "quoted-printable"
log_messagecomposer: A subjob finished. 0 more to go.
log_messagecomposer: Calling process.
log_messagecomposer: composing final message
log_messagecomposer: NoError.
log_messagecomposer: Writing message to disk as .......
Comment 5 Rajeev Bhatta 2015-09-16 16:48:59 UTC
May be related so adding a comment here instead of opening another ticket.

On the same version 4.81 Beta 1, I experienced Kmail to crash multiple times when trying to work with moving folders around. 

If you can let me know how to generate the log will provide that too to help..
Comment 6 Jan-Matthias Braun 2015-09-16 17:15:26 UTC
To get the backtrace, you can start kmail with gdb from a command-line, e.g., "gdb kmail" in konsole will do. Then type "run", to get kmail running, and when it crashes, you can type "back" to get the backtrace. You may need to install gdb manually.

For the log: this is just the regular output. Start kmail from a command-line and this is what will be printed in the terminal window. When starting kmail from KDE this is hidden, but will typically be redirected to the file .xsession-errors in your home-directory, where you will find it.

But actually already my two backtraces end at the same point. So you probably better check, if it really brings up new information. And right now am lacking time to help in fixing this, besides lacking the experience with kmail sources etc... :-(
Comment 7 Jan-Matthias Braun 2015-09-16 17:17:52 UTC
(In reply to Rajeev Bhatta from comment #5)
> May be related so adding a comment here instead of opening another ticket.
> 
> On the same version 4.81 Beta 1, I experienced Kmail to crash multiple times
> when trying to work with moving folders around. 
> 
> If you can let me know how to generate the log will provide that too to
> help..

I am a bit slow right now. I would not expect this to be a similar bug. My crash happens directly in the composer window code and this should not be involved in any kind when moving folders around. Check the backtrace if it includes lines with KMComposeWin::... , but I would guess not.
Comment 8 Rajeev Bhatta 2015-09-17 05:30:03 UTC
(In reply to Jan-Matthias Braun from comment #7)
> (In reply to Rajeev Bhatta from comment #5)
> > May be related so adding a comment here instead of opening another ticket.
> > 
> > On the same version 4.81 Beta 1, I experienced Kmail to crash multiple times
> > when trying to work with moving folders around. 
> > 
> > If you can let me know how to generate the log will provide that too to
> > help..
> 
> I am a bit slow right now. I would not expect this to be a similar bug. My
> crash happens directly in the composer window code and this should not be
> involved in any kind when moving folders around. Check the backtrace if it
> includes lines with KMComposeWin::... , but I would guess not.

Thanks much for the information, I currently run the backtrace but will be doing that shortly and confirming if this is in any way related, if not will open another bug. Thanks again
Comment 9 Jan-Matthias Braun 2015-09-27 10:45:38 UTC
So, I got it! I don't know how but I used the heuristic approach to track the offender.

As the crash happens in slotEditorTextChanged I moved the connect back in the constructor, as is was obviously too early to work when not replying to anything.
This worked out and then I just invested the 5 minutes to find the earliest non-offending position in the constructor, which is exactly after the call to readConfig() (and before setupStatusBar(...)). I hope this helps someone who actually knows what is happening.

The patch I am going to attach now has the connect a hand full of lines later, as there are a lot of connects already so I think it is fitting. Honestly, it doesn't crash right now so I am happy. :-)
Comment 10 Jan-Matthias Braun 2015-09-27 10:47:30 UTC
Created attachment 94740 [details]
Moved the connect of the crashing slot back in code, so it could complete and the window opens.
Comment 11 Jan-Matthias Braun 2015-09-27 10:51:32 UTC
Created attachment 94741 [details]
Similar patch, using the new api for KMComposerEditorNg. Caution! I don't know what I am doing, but it is not crashing on hitting "new mail". :-)

Just the same thing, but this time I used the new api after renaming the class and removing the comment and the old connect statement.
Comment 12 Jan-Matthias Braun 2015-09-27 11:05:13 UTC
On a side note: The crash in slotEditorTextChanged() depended on the local bool textIsNotEmpty = !mComposerBase->editor()->document()->isEmpty(); The crash happend directly in the next call to
    mFindText->setEnabled(textIsNotEmpty);

In my testing, the boolean condition was opposite when hitting reply and when hitting new message and only in the latter case it crashed in the call to setEnabled(...).
Comment 13 Daniele 2015-10-07 08:43:23 UTC
I'm on openSuse Tumbleweed, Qt 5.5 and Plasma 5.4.1 
I'm coming from a duplicated bug so I will do a brief summary.
Kmail 5.0.1 crashes when trying to open the mail composer with a new mail or a forwarded one. It will not crash on a reply. If you open the composer with a reply, then all the new mail will not crash the software, so as a workaround first try to reply a random mail and after cilck on the New button or CTRL+N ecc.
The crash not appears, almost on my system, with the Local Folder.
The crash, and this is a novelty, does not occours with a second IMAP account that I rarely use to send mail. This second account is almost identical at the one that crashes, same server, same domain etc.
This is my backtrace saved using gdb as drkonqi does not appear.
0  0x00007ffff673b6b6 in QAction::setEnabled(bool) () at /usr/lib64/libQt5Widgets.so.5
#1  0x00007ffff78c1f89 in KMComposeWin::slotEditorTextChanged() (this=0x1fabd80) at /usr/src/debug/kdepim-15.08.1/kmail/editor/kmcomposewin.cpp:535
#2  0x00007ffff790681b in KMComposeWin::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>)
    at /usr/src/debug/kdepim-15.08.1/build/kmail/moc_kmcomposewin.cpp:484
#3  0x00007ffff5a89d9a in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#4  0x00007ffff68e670d in  () at /usr/lib64/libQt5Widgets.so.5
#5  0x00007ffff5a89d9a in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#6  0x00007ffff690594d in  () at /usr/lib64/libQt5Widgets.so.5
#7  0x00007ffff690a800 in QWidgetTextControl::qt_metacall(QMetaObject::Call, int, void**) () at /usr/lib64/libQt5Widgets.so.5
#8  0x00007ffff5a89f50 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#9  0x00007ffff60a4d25 in  () at /usr/lib64/libQt5Gui.so.5
#10 0x00007ffff60e781d in QSyntaxHighlighter::rehighlight() () at /usr/lib64/libQt5Gui.so.5
#11 0x00007ffff73b019d in PimCommon::RichTextEditor::setSpellCheckingLanguage(QString const&) () at /usr/lib64/libpimcommon.so.5
#12 0x00007ffff78bfff3 in KMComposeWin::slotSpellCheckingLanguage(QString const&) (this=0x1fabd80, language=...) at /usr/src/debug/kdepim-15.08.1/kmail/editor/kmcomposewin.cpp:523
#13 0x00007ffff5a89c27 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#14 0x00007fffee9e4792 in Sonnet::DictionaryComboBox::dictionaryChanged(QString const&) () at /usr/lib64/libKF5SonnetUi.so.5
#15 0x00007fffee9e480e in  () at /usr/lib64/libKF5SonnetUi.so.5
#16 0x00007fffee9e4a4c in Sonnet::DictionaryComboBox::setCurrentByDictionaryName(QString const&) () at /usr/lib64/libKF5SonnetUi.so.5
#17 0x00007ffff78c8663 in KMComposeWin::readConfig(bool) (this=this@entry=0x1fabd80, reload=reload@entry=false) at /usr/src/debug/kdepim-15.08.1/kmail/editor/kmcomposewin.cpp:650
#18 0x00007ffff78d8aa3 in KMComposeWin::KMComposeWin(boost::shared_ptr<KMime::Message> const&, bool, bool, KMail::Composer::TemplateContext, unsigned int, QString const&, QString const&) (this=this@entry=0x1fabd80, aMsg=..., lastSignState=lastSignState@entry=false, lastEncryptState=lastEncryptState@entry=false, context=context@entry=KMail::Composer::New, id=id@entry=474820061, textSelection=..., customTemplate=..., __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at /usr/src/debug/kdepim-15.08.1/kmail/editor/kmcomposewin.cpp:458
#19 0x00007ffff78d94e1 in KMComposeWin::create(boost::shared_ptr<KMime::Message> const&, bool, bool, KMail::Composer::TemplateContext, unsigned int, QString const&, QString const&) (msg=..., lastSignState=lastSignState@entry=false, lastEncryptState=lastEncryptState@entry=false, context=context@entry=KMail::Composer::New, identity=474820061, textSelection=..., customTemplate=...)
    at /usr/src/debug/kdepim-15.08.1/kmail/editor/kmcomposewin.cpp:216
#20 0x00007ffff78d951c in KMail::makeComposer(boost::shared_ptr<KMime::Message> const&, bool, bool, KMail::Composer::TemplateContext, unsigned int, QString const&, QString const&) (msg=..., lastSignState=lastSignState@entry=false, lastEncryptState=lastEncryptState@entry=false, context=context@entry=KMail::Composer::New, identity=<optimized out>, textSelection=..., customTemplate=...)
    at /usr/src/debug/kdepim-15.08.1/kmail/editor/kmcomposewin.cpp:209
#21 0x00007ffff781a124 in KMMainWidget::slotCompose() (this=0x88d5b0) at /usr/src/debug/kdepim-15.08.1/kmail/kmmainwidget.cpp:1326
#22 0x00007ffff5a89c27 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#23 0x00007ffff67393f2 in QAction::triggered(bool) () at /usr/lib64/libQt5Widgets.so.5
#24 0x00007ffff673b678 in QAction::activate(QAction::ActionEvent) () at /usr/lib64/libQt5Widgets.so.5
#25 0x00007ffff683b510 in  () at /usr/lib64/libQt5Widgets.so.5
#26 0x00007ffff683b61c in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () at /usr/lib64/libQt5Widgets.so.5
#27 0x00007ffff68f58aa in QToolButton::mouseReleaseEvent(QMouseEvent*) () at /usr/lib64/libQt5Widgets.so.5
#28 0x00007ffff6782d28 in QWidget::event(QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#29 0x00007ffff68f5979 in QToolButton::event(QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#30 0x00007ffff67428fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#31 0x00007ffff6748541 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#32 0x00007ffff5a5cb33 in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#33 0x00007ffff67470b2 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () at /usr/lib64/libQt5Widgets.so.5
#34 0x00007ffff679cf73 in  () at /usr/lib64/libQt5Widgets.so.5
#35 0x00007ffff679f4db in  () at /usr/lib64/libQt5Widgets.so.5
#36 0x00007ffff67428fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#37 0x00007ffff6747a06 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#38 0x00007ffff5a5cb33 in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#39 0x00007ffff5fa03fe in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /usr/lib64/libQt5Gui.so.5
#40 0x00007ffff5fa1f65 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /usr/lib64/libQt5Gui.so.5
#41 0x00007ffff5f876b8 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Gui.so.5
#42 0x00007fffd39dbb80 in  () at /usr/lib64/libQt5XcbQpa.so.5
#43 0x00007fffeb1a9cc7 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#44 0x00007fffeb1a9ef8 in  () at /usr/lib64/libglib-2.0.so.0
#45 0x00007fffeb1a9f9c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#46 0x00007ffff5ab033f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#47 0x00007ffff5a5a47a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#48 0x00007ffff5a6211d in QCoreApplication::exec() () at /usr/lib64/libQt5Core.so.5
#49 0x0000000000404458 in main(int, char**) (argc=1, argv=0x7fffffffddd8) at /usr/src/debug/kdepim-15.08.1/kmail/main.cpp:161
Comment 14 Daniele 2015-10-07 09:06:42 UTC
After digging inside the difference between the two accounts I've changed the Identities' property of the one that crashes, in "Advanced" tab I've reverted the Dictionary from "Italian" to "American English" like the other identity that does not crash. Now kmail does not crash anymore.
Comment 15 Christophe Marin 2015-10-15 08:45:47 UTC
ok, that seems reproducible with comment#14 input.

Thread 1 (Thread 0x7fb62291e940 (LWP 3929)):
#0  0x00007fb6178d3602 in KSelectAction::d_func() const (this=0x0) at /kde/src/5/kwidgetsaddons/src/kselectaction.h:64
#1  0x00007fb6178d0096 in KSelectAction::selectableActionGroup() const (this=0x0) at /kde/src/5/kwidgetsaddons/src/kselectaction.cpp:115
#2  0x00007fb6178d00f0 in KSelectAction::currentAction() const (this=0x0) at /kde/src/5/kwidgetsaddons/src/kselectaction.cpp:126
#3  0x00007fb6178d0113 in KSelectAction::currentItem() const (this=0x0) at /kde/src/5/kwidgetsaddons/src/kselectaction.cpp:131
#4  0x00007fb6221d181c in CodecAction::mimeCharsets() const (this=0x0) at /kde/src/5/kdepim/kmail/editor/codec/codecaction.cpp:82
#5  0x00007fb6221f023f in KMComposeWin::applyComposerSetting(MessageComposer::ComposerViewBase*) (this=0x8039d00, mComposerBase=0x83c2e50) at /kde/src/5/kdepim/kmail/editor/kmcomposewin.cpp:2645
#6  0x00007fb6221ea98f in KMComposeWin::autoSaveMessage(bool) (this=0x8039d00, force=true) at /kde/src/5/kdepim/kmail/editor/kmcomposewin.cpp:1908
#7  0x00007fb6220a3744 in KMKernel::dumpDeadLetters() (this=0x7ffd40fa2b60) at /kde/src/5/kdepim/kmail/kmkernel.cpp:1437
#8  0x00007fb6220a2c24 in kmCrashHandler(int) (sigId=11) at /kde/src/5/kdepim/kmail/kmkernel.cpp:1284
#9  0x00007fb61bb06fbc in KCrash::defaultCrashHandler(int) (sig=11) at /kde/src/5/kcrash/src/kcrash.cpp:378
#10 0x00007fb61f6d3830 in <signal handler called> () at /lib64/libc.so.6
#11 0x00007fb620f34686 in QAction::setEnabled(bool) (this=0x8) at ../../src/corelib/tools/qscopedpointer.h:135
#12 0x00007fb620f34686 in QAction::setEnabled(bool) (p=...) at ../../src/corelib/global/qglobal.h:983
#13 0x00007fb620f34686 in QAction::setEnabled(bool) (this=0x0) at kernel/qaction.h:56
#14 0x00007fb620f34686 in QAction::setEnabled(bool) (this=0x0, b=false) at kernel/qaction.cpp:1020
#15 0x00007fb6221dac6e in KMComposeWin::slotEditorTextChanged() (this=0x8039d00) at /kde/src/5/kdepim/kmail/editor/kmcomposewin.cpp:528
#16 0x00007fb6222256d4 in KMComposeWin::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x8039d00, _c=QMetaObject::InvokeMetaMethod, _id=33, _a=0x7ffd40fa0820) at /kde/build/5/kdepim/kmail/moc_kmcomposewin.cpp:485
#17 0x00007fb62028506a in QMetaObject::activate(QObject*, int, int, void**) (sender=0x7163fd0, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3713
#18 0x00007fb620285867 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=m@entry=0x7fb621621b00 <QTextEdit::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3578
#19 0x00007fb6210da690 in QTextEdit::textChanged() (this=<optimized out>) at .moc/moc_qtextedit.cpp:524
#20 0x00007fb6210dfa2d in QTextEdit::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=_o@entry=0x7163fd0, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=0, _a=_a@entry=0x7ffd40fa0980) at .moc/moc_qtextedit.cpp:318
#21 0x00007fb62028506a in QMetaObject::activate(QObject*, int, int, void**) (sender=0x9139820, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3713
#22 0x00007fb620285867 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=<optimized out>, m=m@entry=0x7fb6216236a0 <QWidgetTextControl::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3578
#23 0x00007fb6210f6390 in QWidgetTextControl::textChanged() (this=<optimized out>) at .moc/moc_qwidgettextcontrol_p.cpp:481
#24 0x00007fb6210fecfd in QWidgetTextControl::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=_o@entry=0x9139820, _c=_c@entry=QMetaObject::InvokeMetaMethod, _id=_id@entry=0, _a=_a@entry=0x7ffd40fa0af0) at .moc/moc_qwidgettextcontrol_p.cpp:254
#25 0x00007fb621103bb0 in QWidgetTextControl::qt_metacall(QMetaObject::Call, int, void**) (this=0x9139820, _c=QMetaObject::InvokeMetaMethod, _id=0, _a=0x7ffd40fa0af0) at .moc/moc_qwidgettextcontrol_p.cpp:451
#26 0x00007fb620285220 in QMetaObject::activate(QObject*, int, int, void**) (sender=sender@entry=0x12dbd50, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0) at kernel/qobject.cpp:3728
#27 0x00007fb620285867 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x12dbd50, m=m@entry=0x7fb620dccfc0 <QTextDocument::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x0) at kernel/qobject.cpp:3578
#28 0x00007fb620b02e43 in QTextDocument::contentsChanged() (this=this@entry=0x12dbd50) at .moc/moc_qtextdocument.cpp:378
#29 0x00007fb6208a0245 in QTextDocumentPrivate::finishEdit() (this=0x61c1080) at text/qtextdocument_p.cpp:1646
#30 0x00007fb6208a0245 in QTextDocumentPrivate::finishEdit() (this=0x61c1080) at text/qtextdocument_p.cpp:1238
#31 0x00007fb6208a3ccd in QTextDocumentPrivate::endEditBlock() (this=<optimized out>) at text/qtextdocument_p.cpp:1193
#32 0x00007fb6208e2d3d in QSyntaxHighlighter::rehighlight() (operation=QTextCursor::End, cursor=..., this=0x42bdd70) at text/qsyntaxhighlighter.cpp:69
#33 0x00007fb6208e2d3d in QSyntaxHighlighter::rehighlight() (this=<optimized out>) at text/qsyntaxhighlighter.cpp:368
#34 0x00007fb621c0814b in PimCommon::RichTextEditor::setSpellCheckingLanguage(QString const&) (this=0x7163fd0, _language=...) at /kde/src/5/kdepim/pimcommon/src/texteditor/richtexteditor/richtexteditor.cpp:616
#35 0x00007fb6221dabd3 in KMComposeWin::slotSpellCheckingLanguage(QString const&) (this=0x8039d00, language=...) at /kde/src/5/kdepim/kmail/editor/kmcomposewin.cpp:516
#36 0x00007fb6221fcb52 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<QString const&>, void, void (KMComposeWin::*)(QString const&)>::call(void (KMComposeWin::*)(QString const&), KMComposeWin*, void**) (f=(void (KMComposeWin::*)(KMComposeWin * const, const QString &)) 0x7fb6221dab9e <KMComposeWin::slotSpellCheckingLanguage(QString const&)>, o=0x8039d00, arg=0x7ffd40fa0eb0) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:501
#37 0x00007fb6221fc238 in QtPrivate::FunctionPointer<void (KMComposeWin::*)(QString const&)>::call<QtPrivate::List<QString const&>, void>(void (KMComposeWin::*)(QString const&), KMComposeWin*, void**) (f=(void (KMComposeWin::*)(KMComposeWin * const, const QString &)) 0x7fb6221dab9e <KMComposeWin::slotSpellCheckingLanguage(QString const&)>, o=0x8039d00, arg=0x7ffd40fa0eb0) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:520
#38 0x00007fb6221fb2e3 in QtPrivate::QSlotObject<void (KMComposeWin::*)(QString const&), QtPrivate::List<QString const&>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x1015fa00, r=0x8039d00, a=0x7ffd40fa0eb0, ret=0x0) at /usr/include/qt5/QtCore/qobject_impl.h:143
#39 0x00007fb620284ef7 in QMetaObject::activate(QObject*, int, int, void**) (a=0x7ffd40fa0eb0, r=0x8039d00, this=<optimized out>) at ../../src/corelib/kernel/qobject_impl.h:124
#40 0x00007fb620284ef7 in QMetaObject::activate(QObject*, int, int, void**) (sender=0x416e5b0, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3698
#41 0x00007fb618cdc7cb in Sonnet::DictionaryComboBox::dictionaryChanged(QString const&) (this=0x416e5b0, _t1=...) at /kde/build/5/sonnet/src/ui/moc_dictionarycombobox.cpp:146
#42 0x00007fb618cdbf1a in Sonnet::DictionaryComboBoxPrivate::slotDictionaryChanged(int) (this=0x386a0b0, idx=2) at /kde/src/5/sonnet/src/ui/dictionarycombobox.cpp:40
#43 0x00007fb618cdc22c in Sonnet::DictionaryComboBox::setCurrentByDictionaryName(QString const&) (this=0x416e5b0, name=...) at /kde/src/5/sonnet/src/ui/dictionarycombobox.cpp:81
#44 0x00007fb6221db72c in KMComposeWin::readConfig(bool) (this=0x8039d00, reload=false) at /kde/src/5/kdepim/kmail/editor/kmcomposewin.cpp:643
#45 0x00007fb6221d9892 in KMComposeWin::KMComposeWin(QSharedPointer<KMime::Message> const&, bool, bool, KMail::Composer::TemplateContext, unsigned int, QString const&, QString const&) (this=0x8039d00, aMsg=..., lastSignState=false, lastEncryptState=false, context=KMail::Composer::New, id=2132794516, textSelection=..., customTemplate=..., __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at /kde/src/5/kdepim/kmail/editor/kmcomposewin.cpp:451
#46 0x00007fb6221d2edf in KMComposeWin::create(QSharedPointer<KMime::Message> const&, bool, bool, KMail::Composer::TemplateContext, unsigned int, QString const&, QString const&) (msg=..., lastSignState=false, lastEncryptState=false, context=KMail::Composer::New, identity=2132794516, textSelection=..., customTemplate=...) at /kde/src/5/kdepim/kmail/editor/kmcomposewin.cpp:210
#47 0x00007fb6221d2e7f in KMail::makeComposer(QSharedPointer<KMime::Message> const&, bool, bool, KMail::Composer::TemplateContext, unsigned int, QString const&, QString const&) (msg=..., lastSignState=false, lastEncryptState=false, context=KMail::Composer::New, identity=2132794516, textSelection=..., customTemplate=...) at /kde/src/5/kdepim/kmail/editor/kmcomposewin.cpp:203
#48 0x00007fb6220da5fa in KMMainWidget::slotCompose() (this=0x140bdf0) at /kde/src/5/kdepim/kmail/kmmainwidget.cpp:1328
#49 0x00007fb622104c13 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (KMMainWidget::*)()>::call(void (KMMainWidget::*)(), KMMainWidget*, void**) (f=(void (KMMainWidget::*)(KMMainWidget * const)) 0x7fb6220da438 <KMMainWidget::slotCompose()>, o=0x140bdf0, arg=0x7ffd40fa1ee0) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:501
#50 0x00007fb622103e82 in QtPrivate::FunctionPointer<void (KMMainWidget::*)()>::call<QtPrivate::List<>, void>(void (KMMainWidget::*)(), KMMainWidget*, void**) (f=(void (KMMainWidget::*)(KMMainWidget * const)) 0x7fb6220da438 <KMMainWidget::slotCompose()>, o=0x140bdf0, arg=0x7ffd40fa1ee0) at /usr/include/qt5/QtCore/qobjectdefs_impl.h:520
#51 0x00007fb6221014fd in QtPrivate::QSlotObject<void (KMMainWidget::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x25f35a0, r=0x140bdf0, a=0x7ffd40fa1ee0, ret=0x0) at /usr/include/qt5/QtCore/qobject_impl.h:143
#52 0x00007fb620284ef7 in QMetaObject::activate(QObject*, int, int, void**) (a=0x7ffd40fa1ee0, r=0x140bdf0, this=<optimized out>) at ../../src/corelib/kernel/qobject_impl.h:124
#53 0x00007fb620284ef7 in QMetaObject::activate(QObject*, int, int, void**) (sender=sender@entry=0x25bd780, signalOffset=<optimized out>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffd40fa1ee0) at kernel/qobject.cpp:3698
#54 0x00007fb620285867 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x25bd780, m=m@entry=0x7fb621618080 <QAction::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffd40fa1ee0) at kernel/qobject.cpp:3578
#55 0x00007fb620f323f2 in QAction::triggered(bool) (this=this@entry=0x25bd780, _t1=false) at .moc/moc_qaction.cpp:365
#56 0x00007fb620f34648 in QAction::activate(QAction::ActionEvent) (this=0x25bd780, event=<optimized out>) at kernel/qaction.cpp:1162
#57 0x00007fb621034300 in QAbstractButtonPrivate::click() (this=0x263cfc0) at widgets/qabstractbutton.cpp:516
#58 0x00007fb62103440c in QAbstractButton::mouseReleaseEvent(QMouseEvent*) (this=0x263cf80, e=0x7ffd40fa23b0) at widgets/qabstractbutton.cpp:1132
#59 0x00007fb6210eec5a in QToolButton::mouseReleaseEvent(QMouseEvent*) (this=<optimized out>, e=<optimized out>) at widgets/qtoolbutton.cpp:609
#60 0x00007fb620f7be28 in QWidget::event(QEvent*) (this=0x263cf80, event=event@entry=0x7ffd40fa23b0) at kernel/qwidget.cpp:9047
#61 0x00007fb6210350d3 in QAbstractButton::event(QEvent*) (this=this@entry=0x263cf80, e=e@entry=0x7ffd40fa23b0) at widgets/qabstractbutton.cpp:1089
#62 0x00007fb6210eed29 in QToolButton::event(QEvent*) (this=0x263cf80, event=0x7ffd40fa23b0) at widgets/qtoolbutton.cpp:970
#63 0x00007fb620f3b8cc in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x111cdb0, receiver=receiver@entry=0x263cf80, e=e@entry=0x7ffd40fa23b0) at kernel/qapplication.cpp:3716
#64 0x00007fb620f41511 in QApplication::notify(QObject*, QEvent*) (this=<optimized out>, receiver=0x263cf80, e=0x7ffd40fa23b0) at kernel/qapplication.cpp:3276
#65 0x00007fb620257da3 in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffd40fa2ca0, receiver=receiver@entry=0x263cf80, event=event@entry=0x7ffd40fa23b0) at kernel/qcoreapplication.cpp:965
#66 0x00007fb620f40082 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) (event=0x7ffd40fa23b0, receiver=0x263cf80) at ../../src/corelib/kernel/qcoreapplication.h:227
#67 0x00007fb620f40082 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) (receiver=receiver@entry=0x263cf80, event=event@entry=0x7ffd40fa23b0, alienWidget=alienWidget@entry=0x263cf80, nativeWidget=0x2602eb0, buttonDown=buttonDown@entry=0x7fb6216466a0 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at kernel/qapplication.cpp:2770
#68 0x00007fb620f95d43 in QWidgetWindow::handleMouseEvent(QMouseEvent*) (this=this@entry=0x26353d0, event=event@entry=0x7ffd40fa27b0) at kernel/qwidgetwindow.cpp:555
#69 0x00007fb620f982ab in QWidgetWindow::event(QEvent*) (this=0x26353d0, event=0x7ffd40fa27b0) at kernel/qwidgetwindow.cpp:210
#70 0x00007fb620f3b8cc in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x111cdb0, receiver=receiver@entry=0x26353d0, e=e@entry=0x7ffd40fa27b0) at kernel/qapplication.cpp:3716
#71 0x00007fb620f409d6 in QApplication::notify(QObject*, QEvent*) (this=0x7ffd40fa2ca0, receiver=0x26353d0, e=0x7ffd40fa27b0) at kernel/qapplication.cpp:3499
#72 0x00007fb620257da3 in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffd40fa2ca0, receiver=receiver@entry=0x26353d0, event=event@entry=0x7ffd40fa27b0) at kernel/qcoreapplication.cpp:965
#73 0x00007fb62079b7ae in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) (event=0x7ffd40fa27b0, receiver=0x26353d0) at ../../src/corelib/kernel/qcoreapplication.h:227
#74 0x00007fb62079b7ae in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) (e=0x3601da0) at kernel/qguiapplication.cpp:1789
#75 0x00007fb62079d315 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) (e=e@entry=0x3601da0) at kernel/qguiapplication.cpp:1581
#76 0x00007fb620782a38 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=...) at kernel/qwindowsysteminterface.cpp:625
#77 0x00007fb5fdb19e90 in userEventSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at eventdispatchers/qeventdispatcher_glib.cpp:70
#78 0x00007fb61492bcc7 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#79 0x00007fb61492bef8 in  () at /usr/lib64/libglib-2.0.so.0
#80 0x00007fb61492bf9c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#81 0x00007fb6202ab60f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x1189ba0, flags=...) at kernel/qeventdispatcher_glib.cpp:418
#82 0x00007fb6202556da in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffd40fa2b00, flags=..., flags@entry=...) at kernel/qeventloop.cpp:204
#83 0x00007fb62025d3bd in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1229
#84 0x00000000004066e5 in main(int, char**) (argc=1, argv=0x7ffd40fa2e08) at /kde/src/5/kdepim/kmail/main.cpp:150
(gdb)
Comment 16 Laurent Montel 2015-10-15 13:34:53 UTC
Ok found the bug.
I will provide a fix soon.
Comment 17 Laurent Montel 2015-10-15 13:36:16 UTC
Git commit 7744a9211d819488ba9de6880113e82297acf5bb by Montel Laurent.
Committed on 15/10/2015 at 13:35.
Pushed by mlaurent into branch 'Applications/15.08'.

Fix Bug 351395 - Crash when the identity's "dictionary" setting is changed

FIXED-IN: 5.0.2

M  +2    -1    kmail/editor/kmcomposewin.cpp

http://commits.kde.org/kdepim/7744a9211d819488ba9de6880113e82297acf5bb