Bug 313887 - KMail crashes when viewing specific e-mail with "Enterprise headers theme"
Summary: KMail crashes when viewing specific e-mail with "Enterprise headers theme"
Status: RESOLVED FIXED
Alias: None
Product: kontact
Classification: Applications
Component: general (show other bugs)
Version: 4.9.4
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-01-25 16:42 UTC by markus.wallerberger
Modified: 2013-01-29 14:19 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
The e-mail that causes the crash (caution: cleaned-up) (2.49 MB, text/plain)
2013-01-25 16:44 UTC, markus.wallerberger
Details

Note You need to log in before you can comment on or make changes to this bug.
Description markus.wallerberger 2013-01-25 16:42:44 UTC
Application: kontact (4.9.4)
KDE Platform Version: 4.9.4
Qt Version: 4.8.3
Operating System: Linux 3.5.0-22-generic x86_64
Distribution: Ubuntu 12.10

-- Information about the crash:
- What I was doing when the application crashed:
In KMail 4.9.4, when I select one specific e-mail in my inbox, KMail crashes. All other e-mails work fine.

The e-mail is 1.9 MiB in size and has a TeX file and a PDF file as attachments. It is in the inbox folder of an Akonadi IMAP resource linked to my GMail account. I provide a cleaned-up version of the e-mail as attachment.

- Reproducible:
Always.

- Steps to reproduce:
1. Open KMail
2. Select this e-mail in the folder view

The crash can be reproduced every time.

-- Backtrace:
Application: Kontact (kontact), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7feab2e177c0 (LWP 17148))]

Thread 4 (Thread 0x7feaab247700 (LWP 17149)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007feac438eb2d in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#2  0x00007feac438ec39 in ?? () from /usr/lib/x86_64-linux-gnu/libQtWebKit.so.4
#3  0x00007feabf8d8e9a in start_thread (arg=0x7feaab247700) at pthread_create.c:308
#4  0x00007feac50b9cbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#5  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7feaaa946700 (LWP 17150)):
#0  0x00007feabdc3b14b in __GI_clock_gettime (clock_id=1, tp=0x7feaaa945b30) at ../sysdeps/unix/clock_gettime.c:116
#1  0x00007feac57599c4 in do_gettime (frac=0x7feaaa945b18, sec=0x7feaaa945b10) at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0x00007feac582f41d in QTimerInfoList::updateCurrentTime (this=this@entry=0x7feaa4002860) at kernel/qeventdispatcher_unix.cpp:343
#4  0x00007feac582f763 in QTimerInfoList::timerWait (this=0x7feaa4002860, tm=...) at kernel/qeventdispatcher_unix.cpp:450
#5  0x00007feac582e2cc in timerSourcePrepareHelper (src=<optimized out>, timeout=0x7feaaa945c04) at kernel/qeventdispatcher_glib.cpp:136
#6  0x00007feac582e375 in timerSourcePrepare (source=<optimized out>, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x00007feabf409618 in g_main_context_prepare () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#8  0x00007feabf409cab in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#9  0x00007feabf409ea4 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#10 0x00007feac582ec16 in QEventDispatcherGlib::processEvents (this=0x7feaa40008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#11 0x00007feac57ff2bf in QEventLoop::processEvents (this=this@entry=0x7feaaa945dc0, flags=...) at kernel/qeventloop.cpp:149
#12 0x00007feac57ff548 in QEventLoop::exec (this=0x7feaaa945dc0, flags=...) at kernel/qeventloop.cpp:204
#13 0x00007feac5700b10 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#14 0x00007feac5703aec in QThreadPrivate::start (arg=0xfe8b30) at thread/qthread_unix.cpp:338
#15 0x00007feabf8d8e9a in start_thread (arg=0x7feaaa946700) at pthread_create.c:308
#16 0x00007feac50b9cbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#17 0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7fea5def0700 (LWP 17154)):
#0  0x00007feabf8daf69 in __pthread_mutex_lock (mutex=0x7fea58000a60) at pthread_mutex_lock.c:92
#1  0x00007feabf446e21 in g_mutex_lock () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007feabf409897 in g_main_context_check () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007feabf409d22 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007feabf409ea4 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007feac582ec16 in QEventDispatcherGlib::processEvents (this=0x7fea580008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#6  0x00007feac57ff2bf in QEventLoop::processEvents (this=this@entry=0x7fea5deefd80, flags=...) at kernel/qeventloop.cpp:149
#7  0x00007feac57ff548 in QEventLoop::exec (this=0x7fea5deefd80, flags=...) at kernel/qeventloop.cpp:204
#8  0x00007feac5700b10 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#9  0x00007feac57e1478 in QDnotifySignalThread::run (this=0x1574ca0) at io/qfilesystemwatcher_dnotify.cpp:179
#10 0x00007feac5703aec in QThreadPrivate::start (arg=0x1574ca0) at thread/qthread_unix.cpp:338
#11 0x00007feabf8d8e9a in start_thread (arg=0x7fea5def0700) at pthread_create.c:308
#12 0x00007feac50b9cbd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#13 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7feab2e177c0 (LWP 17148)):
[KCrash Handler]
#6  0x00007fea62747041 in operator[] (i=<optimized out>, this=0x1c50fe0) at /usr/include/qt4/QtCore/qstring.h:703
#7  MessageCore::StringUtil::quoteHtmlChars (str=..., removeLineBreaks=true) at ../../messagecore/stringutil.cpp:651
#8  0x00007fea61024464 in MessageViewer::ObjectTreeParser::processTextPlainSubtype (this=0x7fff18369b60, curNode=0x26f6d00, result=...) at ../../messageviewer/objecttreeparser.cpp:1404
#9  0x00007fea61022cfb in MessageViewer::ObjectTreeParser::parseObjectTreeInternal (this=this@entry=0x7fff18369b60, node=0x26f6d00, node@entry=0x276b410) at ../../messageviewer/objecttreeparser.cpp:353
#10 0x00007fea61022f17 in MessageViewer::ObjectTreeParser::stdChildHandling (this=this@entry=0x7fff18369dd0, child=0x276b410) at ../../messageviewer/objecttreeparser.cpp:1452
#11 0x00007fea61023332 in processMultiPartMixedSubtype (node=0x16388c0, this=0x7fff18369dd0) at ../../messageviewer/objecttreeparser.cpp:1485
#12 MessageViewer::ObjectTreeParser::processMultiPartMixedSubtype (this=0x7fff18369dd0, node=0x16388c0) at ../../messageviewer/objecttreeparser.cpp:1474
#13 0x00007fea61022cfb in MessageViewer::ObjectTreeParser::parseObjectTreeInternal (this=0x7fff18369dd0, node=0x16388c0) at ../../messageviewer/objecttreeparser.cpp:353
#14 0x00007fea610582b0 in MessageViewer::ViewerPrivate::parseContent (this=this@entry=0x1530820, content=0x16388c0) at ../../messageviewer/viewer_p.cpp:1023
#15 0x00007fea61059b7c in MessageViewer::ViewerPrivate::displayMessage (this=this@entry=0x1530820) at ../../messageviewer/viewer_p.cpp:895
#16 0x00007fea6105a096 in MessageViewer::ViewerPrivate::updateReaderWin (this=0x1530820) at ../../messageviewer/viewer_p.cpp:2252
#17 0x00007fea6105cdea in MessageViewer::ViewerPrivate::qt_static_metacall (_o=0x1530820, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at ./viewer_p.moc:230
#18 0x00007feac5815f5f in QMetaObject::activate (sender=0x15308b0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3547
#19 0x00007feac581526c in QObject::event (this=0x15308b0, e=<optimized out>) at kernel/qobject.cpp:1157
#20 0x00007feac61e1e9c in QApplicationPrivate::notify_helper (this=this@entry=0xe696d0, receiver=receiver@entry=0x15308b0, e=e@entry=0x7fff1836a800) at kernel/qapplication.cpp:4562
#21 0x00007feac61e630a in QApplication::notify (this=0x7fff1836ac00, receiver=0x15308b0, e=0x7fff1836a800) at kernel/qapplication.cpp:4423
#22 0x00007feac6eea1d6 in KApplication::notify (this=0x7fff1836ac00, receiver=0x15308b0, event=0x7fff1836a800) at ../../kdeui/kernel/kapplication.cpp:311
#23 0x00007feac580056e in QCoreApplication::notifyInternal (this=0x7fff1836ac00, receiver=0x15308b0, event=0x7fff1836a800) at kernel/qcoreapplication.cpp:915
#24 0x00007feac5831462 in sendEvent (event=0x7fff1836a800, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:231
#25 QTimerInfoList::activateTimers (this=0xe73460) at kernel/qeventdispatcher_unix.cpp:611
#26 0x00007feac582e584 in timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:186
#27 timerSourceDispatch (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:180
#28 0x00007feabf409ab5 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#29 0x00007feabf409de8 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#30 0x00007feabf409ea4 in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#31 0x00007feac582ebf6 in QEventDispatcherGlib::processEvents (this=0xe39c10, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#32 0x00007feac6286c1e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#33 0x00007feac57ff2bf in QEventLoop::processEvents (this=this@entry=0x7fff1836aa70, flags=...) at kernel/qeventloop.cpp:149
#34 0x00007feac57ff548 in QEventLoop::exec (this=0x7fff1836aa70, flags=...) at kernel/qeventloop.cpp:204
#35 0x00007feac5804708 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#36 0x0000000000403339 in main (argc=1, argv=0x7fff1836ad48) at ../../../kontact/src/main.cpp:219

Reported using DrKonqi
Comment 1 markus.wallerberger 2013-01-25 16:44:53 UTC
Created attachment 76716 [details]
The e-mail that causes the crash (caution: cleaned-up)

This is the e-mail that causes KMail to crash. For data protection reasons, I have replaced some headers with *********. If you need the original e-mail, please drop me a note and I will send it to you.
Comment 2 Laurent Montel 2013-01-25 17:18:55 UTC
Save your email as mbox please.
Regards
Comment 3 Laurent Montel 2013-01-25 17:44:23 UTC
Sorry can't reproduce it.
Perhaps I need to have initial email don't know.
Comment 4 markus.wallerberger 2013-01-29 10:17:16 UTC
I suspect now this is related to the "Enterprise headers" in KMail ... 

If I open the e-mail in the Akonadi Console ("Browser" tab), it works fine. I can view both the formatted version in the "payload" sub-tab and the unformatted code. If I now change the message header theme to "fancy headers" or "classic headers", I can view the e-mail in KMail as well.

The weird part is though that if I now change the headers back to "Enterprise", it still works now. So now I can't reproduce it anymore either.
Comment 5 Laurent Montel 2013-01-29 14:19:16 UTC
If you can't reproduce it too bad.
I will close until you can reproduce it.