Bug 351677 - After udating to 15.08 kmail crashes on pressing "new message"
Summary: After udating to 15.08 kmail crashes on pressing "new message"
Status: RESOLVED FIXED
Alias: None
Product: kmail2
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-08-24 07:34 UTC by piedro
Modified: 2016-03-19 10:30 UTC (History)
12 users (show)

See Also:
Latest Commit:
Version Fixed In: 15.08.2
Sentry Crash Report:


Attachments
kmail backtrace (8.49 KB, text/plain)
2015-10-06 22:27 UTC, Daniele
Details
Backtrace of the crash (7.12 KB, text/plain)
2016-03-19 10:30 UTC, Martin Stockhammer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description piedro 2015-08-24 07:34:27 UTC
WHenever I try to write a new message kmail crashes. 

The message I get is (translated):  
"There has been several failing efforts to open the password manager. Probably there is a malfunction." 

Now akonadi configuration shows only one akonadi ressource, my google contacts.... 
Akonadi console shows all my imap ressources, filters and stuff... 

Not being able to send mail at all is critical for an email client, I guess. 

Thx for quick help, 
piedro

Reproducible: Always

Steps to Reproduce:
1. press "new message" 
2. 
3.

Actual Results:  
crash hinting to kwallet malfunction

Expected Results:  
no crash obviously and a worling sendmail agent
Comment 1 piedro 2015-08-24 08:27:41 UTC
Also on pressing "forward"...   here's an error message: 

log_messagecomposer: initalising autosave
Sonnet: Unable to load plugin "/usr/lib/qt/plugins/kf5/sonnet/hspell.so" Error: "Die Bibliothek /usr/lib/qt/plugins/kf5/sonnet/hspell.so kann nicht geladen werden: (libhspell.so.0: Kann die Shared-Object-Datei nicht \u00F6ffnen: Datei oder Verzeichnis nicht gefunden)"
"contactsCompletionSession"
connectToServer "/tmp/akonadi-[my-username].GcojKr/akonadiserver.socket"
QObject::connect: Cannot connect MessageComposer::RecipientLineNG::addRecipient(RecipientLineNG*,QString) to (null)::addRecipient(RecipientLineNG*,QString)
Comment 2 ali akcza 2015-08-26 09:53:27 UTC
remove aspell-en and try again.
Comment 3 piedro 2015-08-26 11:40:35 UTC
I don't have aspell-en installed. Can*t remove aspell without removing most of KDE as dependencies. Now I installed aspell-de for german dictonaries and now there seems to be no more crash. 

I will watch whether this solves the problem and report back. 

thx a lot, piedro
Comment 4 nmset 2015-08-28 16:07:21 UTC
I'm having a similar issue with the following in kmail2rc

PreviousDictionary=français (France)
StickyDictionary=true

If I set StickyDictionary=false, there is no crash when calling the new message window.

Moreover, the selected dictionary from the combo box is 'français (France)' and not 'français (France)'. With StickyDictionary=false, this dictionary is not selected by default.

I have aspell-en and aspell-fr already installed.
Comment 5 Xavier Corredor Llano 2015-09-08 03:24:02 UTC
Confirmed! the crash happened too when I click in some email in "from" or "to" field. I tried to applying the solution commented by nmset settings StickyDictionary=false, but for me no work. The only way for redact a email is doing click in "replay" or "forward" field :/
Comment 6 qqqqqqqqq9 2015-09-10 09:21:35 UTC
Confirmed.
The crash happens with all identities with german dictionary enabled. 
Workaround: Use US-dictionary.
Comment 7 Alexander Görtz 2015-09-16 06:43:55 UTC
I can confirm that with kmail2 4.81 beta1, but with the us dictionary some crashes go away but not all I still can't use forward->in text.
Comment 8 Alexander Görtz 2015-09-16 06:49:42 UTC
I'm really missing an edit button for comments.
Here is the output directly before the crash, not sure it helps but won't hurt to show it:
QObject::connect: Cannot connect MessageComposer::RecipientLineNG::addRecipient(RecipientLineNG*,QString) to (null)::addRecipient(RecipientLineNG*,QString)
log_kmail: 
log_kmail: "Alexander G\u00F6rtz"
*** KMail got signal 11 (Exiting)
[1]    8936 segmentation fault (core dumped)  kmail
Comment 9 piedro 2015-09-16 12:58:40 UTC
So what is the workaround here? 

I installed the US dictionary and still it crashes. 

Is there anyone working on this? 

not that's a big thing if your mail client can't send mail and crashes along the way... just saying... 

p.
Comment 10 nmset 2015-09-16 17:24:07 UTC
I think you should not use 'persistent' dictionary in the new mail editor, and use US dictionary in identities. At least on my laptop, that's how it goes.
Comment 11 Daniele 2015-09-18 19:19:06 UTC
My workaround:
Open Kmail
Reply a random message
Kmail will open the mail composer
close the composer if you did not need to replay 
click on the new mail button
Kmail will open the mail composer
From now on the new mail button will work.
I suppose something is not instantiated in the correct order so pressing the new mail button hit a null pointer.
Comment 12 qqqqqqqqq9 2015-09-19 10:26:39 UTC
@Daniele

I used to use this workaround but  I experienced corruption/data loss (might be unrelated)
The messages I send were not uploaded to the sent folder on imap anymore but stored locally in akonadi only. I. e. Akonadi reported the sent folder to contain 191 messages but when I looked into it via web interface only 182 were there. The recently sent messages were missing.
Comment 13 piedro 2015-09-24 12:52:59 UTC
This is really getting annoying. What kind of mail client cannot create new messages?  

Please confirm someone this bug. 
Also make it "critical" or "crash"... 

Fiddling around with dictionaries does not seem to work, besides removing dictionaries means I cannot use these dictionaries elsewhere (browsers, libreoffice, calligra, notes...) 

@daniele: For me your workaround works but only one time. The next time I open kmail I have to repeat this procedure again. 

frustrated, 
piedro
Comment 14 piedro 2015-09-24 12:55:48 UTC
ALso @daniele: 

Your workaround has to be repeated for every single mail account... 
sorry, but that is no solution at all. 

thx anyway, p.
Comment 15 Daniele 2015-10-05 13:40:04 UTC
Update.
The problem persist on OpenSuse Tumbleweed with Qt5.5 and KMail 5.0.1
Comment 16 Raymond Wooninck 2015-10-06 21:09:37 UTC
Everyone is indicating that kmail is crashing, but where is the backtrace  ?  A good bug report would have the backtrace of the crash attached.  Of course make sure you have the debug packages (if required for your distro) installed and then drkonqi should be able to create a nice backtrace that the developer can use to find the issue.
Comment 17 Daniele 2015-10-06 22:27:22 UTC
Created attachment 94866 [details]
kmail backtrace

From Tumbleweed, Plasma 5.4.1, Qt 5.5, kernel 4.2.1
Comment 18 Laurent Montel 2015-10-07 06:23:42 UTC
this backtrace is unrelated to press "new message" no ?
Comment 19 Daniele 2015-10-07 07:48:10 UTC
I do not know cause drkonqi does not appear after the crash, that is a backtrace copied from a drkonqi that I've found casually on my second activity desktop. I've a coredump but it is too large for bugzilla limits.
Comment 20 Antonio Rojas 2015-10-07 08:04:53 UTC
There is a backtrace available in the duplicate Bug 351395
Comment 21 Daniele 2015-10-07 08:19:27 UTC
So we can close this bug as duplicate and post comments on the 351395? I've done more tests and the bug now appears only with a specific account.
Comment 22 Xavier Corredor Llano 2015-10-14 15:42:58 UTC
For me this bug is complete fixed after update to version 15.08.2 (in Archlinux)!
Thanks devs!
Comment 23 Daniele 2015-10-14 16:42:18 UTC
OpenSuse Tumbleweed here, the bug is not fixed in 15.08.2.
#0  0x00007ffff673e6b6 in QAction::setEnabled(bool) () at /usr/lib64/libQt5Widgets.so.5
#1  0x00007ffff78c3859 in KMComposeWin::slotEditorTextChanged() (this=0x15df920) at /usr/src/debug/kdepim-15.08.2/kmail/editor/kmcomposewin.cpp:535
#2  0x00007ffff7907794 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.2/build/kmail/moc_kmcomposewin.cpp:485
#3  0x00007ffff5a8cd9a in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#4  0x00007ffff68e970d in  () at /usr/lib64/libQt5Widgets.so.5
#5  0x00007ffff5a8cd9a in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#6  0x00007ffff690894d in  () at /usr/lib64/libQt5Widgets.so.5
#7  0x00007ffff690d800 in QWidgetTextControl::qt_metacall(QMetaObject::Call, int, void**) () at /usr/lib64/libQt5Widgets.so.5
#8  0x00007ffff5a8cf50 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#9  0x00007ffff60a7d25 in  () at /usr/lib64/libQt5Gui.so.5
#10 0x00007ffff60ea81d in QSyntaxHighlighter::rehighlight() () at /usr/lib64/libQt5Gui.so.5
#11 0x00007ffff73b361d in PimCommon::RichTextEditor::setSpellCheckingLanguage(QString const&) () at /usr/lib64/libpimcommon.so.5
#12 0x00007ffff78c18c3 in KMComposeWin::slotSpellCheckingLanguage(QString const&) (this=0x15df920, language=...) at /usr/src/debug/kdepim-15.08.2/kmail/editor/kmcomposewin.cpp:523
#13 0x00007ffff5a8cc27 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#14 0x00007fffee9f1792 in Sonnet::DictionaryComboBox::dictionaryChanged(QString const&) () at /usr/lib64/libKF5SonnetUi.so.5
#15 0x00007fffee9f180e in  () at /usr/lib64/libKF5SonnetUi.so.5
#16 0x00007fffee9f1a4c in Sonnet::DictionaryComboBox::setCurrentByDictionaryName(QString const&) () at /usr/lib64/libKF5SonnetUi.so.5
#17 0x00007ffff78c9e33 in KMComposeWin::readConfig(bool) (this=this@entry=0x15df920, reload=reload@entry=false) at /usr/src/debug/kdepim-15.08.2/kmail/editor/kmcomposewin.cpp:650
#18 0x00007ffff78da1b3 in KMComposeWin::KMComposeWin(boost::shared_ptr<KMime::Message> const&, bool, bool, KMail::Composer::TemplateContext, unsigned int, QString const&, QString const&) (this=this@entry=0x15df920, 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.2/kmail/editor/kmcomposewin.cpp:458
#19 0x00007ffff78dabf1 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.2/kmail/editor/kmcomposewin.cpp:216
#20 0x00007ffff78dac2c 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.2/kmail/editor/kmcomposewin.cpp:209
#21 0x00007ffff781c294 in KMMainWidget::slotCompose() (this=0x88c7f0) at /usr/src/debug/kdepim-15.08.2/kmail/kmmainwidget.cpp:1326
#22 0x00007ffff5a8cc27 in QMetaObject::activate(QObject*, int, int, void**) () at /usr/lib64/libQt5Core.so.5
#23 0x00007ffff673c3f2 in QAction::triggered(bool) () at /usr/lib64/libQt5Widgets.so.5
#24 0x00007ffff673e678 in QAction::activate(QAction::ActionEvent) () at /usr/lib64/libQt5Widgets.so.5
#25 0x00007ffff683e510 in  () at /usr/lib64/libQt5Widgets.so.5
#26 0x00007ffff683e61c in QAbstractButton::mouseReleaseEvent(QMouseEvent*) () at /usr/lib64/libQt5Widgets.so.5
#27 0x00007ffff68f88aa in QToolButton::mouseReleaseEvent(QMouseEvent*) () at /usr/lib64/libQt5Widgets.so.5
#28 0x00007ffff6785d28 in QWidget::event(QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#29 0x00007ffff68f8979 in QToolButton::event(QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#30 0x00007ffff67458fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#31 0x00007ffff674b541 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#32 0x00007ffff5a5fb33 in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#33 0x00007ffff674a0b2 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () at /usr/lib64/libQt5Widgets.so.5
#34 0x00007ffff679ff73 in  () at /usr/lib64/libQt5Widgets.so.5
#35 0x00007ffff67a24db in  () at /usr/lib64/libQt5Widgets.so.5
#36 0x00007ffff67458fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#37 0x00007ffff674aa06 in QApplication::notify(QObject*, QEvent*) () at /usr/lib64/libQt5Widgets.so.5
#38 0x00007ffff5a5fb33 in QCoreApplication::notifyInternal(QObject*, QEvent*) () at /usr/lib64/libQt5Core.so.5
#39 0x00007ffff5fa33fe in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /usr/lib64/libQt5Gui.so.5
#40 0x00007ffff5fa4f65 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) () at /usr/lib64/libQt5Gui.so.5
#41 0x00007ffff5f8a6b8 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Gui.so.5
#42 0x00007fffd39ebb80 in  () at /usr/lib64/libQt5XcbQpa.so.5
#43 0x00007fffeb1b7cc7 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#44 0x00007fffeb1b7ef8 in  () at /usr/lib64/libglib-2.0.so.0
#45 0x00007fffeb1b7f9c in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#46 0x00007ffff5ab333f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#47 0x00007ffff5a5d47a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib64/libQt5Core.so.5
#48 0x00007ffff5a6511d in QCoreApplication::exec() () at /usr/lib64/libQt5Core.so.5
#49 0x0000000000404518 in main(int, char**) (argc=1, argv=0x7fffffffddd8) at /usr/src/debug/kdepim-15.08.2/kmail/main.cpp:161
Comment 25 nmset 2015-10-15 18:36:48 UTC
(In reply to Xavier Corredor Llano from comment #22)
> For me this bug is complete fixed after update to version 15.08.2 (in
> Archlinux)!
> Thanks devs!

For me on Arch with kmail 5.0.2 / 15.08.2, kmail still crashes next time new message button is pressed, if French dictionary is selected and set to permanent.
Comment 26 Xavier Corredor Llano 2015-10-15 20:03:11 UTC
(In reply to nmset from comment #25)
> (In reply to Xavier Corredor Llano from comment #22)
> > For me this bug is complete fixed after update to version 15.08.2 (in
> > Archlinux)!
> > Thanks devs!
> 
> For me on Arch with kmail 5.0.2 / 15.08.2, kmail still crashes next time new
> message button is pressed, if French dictionary is selected and set to
> permanent.

Try with the last update: kdepim 15.08.2-2

Fix commit: https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/kdepim&id=eec2f84c0eb598f88c93e63f65e14ad26603b888
Bug report: https://bugs.archlinux.org/task/46075
Comment 27 nmset 2015-10-17 13:17:50 UTC
Yep, fixed in kdepim 15.08.2-2.
Comment 28 wotanii 2016-02-03 18:25:51 UTC
today I set the german dictionary to permanent and since then kontact crashed whenever I create a new email. 

I use KMail 5.0.2
installing aspell-de didn't seem to solve the issue.
changing kmail2rc didn't seem to solve the issue (in fact  kMail and kontact didn't even seem to notice any changes I made there).

I would supply a log-file, but KDE doesn't seem to have any.
Comment 29 wotanii 2016-02-07 08:35:26 UTC
it turns out the config under ~/.kde/share/config isn't read by anything. (Even though all resources told me otherwise.)
even the path I got from "kde4-config --path config --locate kmailrc" was wrong. (it was "/usr/share/kubuntu-default-settings/kde4-profile/default/share/config/kmailrc".)

the actual config is under: 
~/.config/kmail2rc
(which I only found out after browsing all config-locations manually and breaking things to see if it affects kmail)

In there I looked for the "PreviousDictionary"-Line and changed it to:
PreviousDictionary=American English (United States)

After the next start of kmail I could create new emails. 


on a side-note: How can you expect people to wait for the next release for a fix for this critical bugs? Stuff like this should immediately be rolled out to all versions.
Comment 30 Martin Stockhammer 2016-03-19 10:28:42 UTC
With kontact 5.0.2 here on kubuntu (backport ppa), I have the same error with german dictionary.
I will attach a backtrace.
Comment 31 Martin Stockhammer 2016-03-19 10:30:44 UTC
Created attachment 97967 [details]
Backtrace of the crash