Bug 353146 - KMail crash when selecting second mail message in thread (First one was read, second was unread)
Summary: KMail crash when selecting second mail message in thread (First one was read,...
Status: RESOLVED UNMAINTAINED
Alias: None
Product: kmail2
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2015-09-24 19:41 UTC by Angelos Skembris
Modified: 2018-01-31 16:52 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Angelos Skembris 2015-09-24 19:41:52 UTC
Application: kmail (4.14.9)
KDE Platform Version: 4.14.9
Qt Version: 4.8.6
Operating System: Linux 3.16.7-24-desktop x86_64
Distribution: "openSUSE 13.2 (Harlequin) (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:
Checking my mail inbox. The crash occurred when I selected the second message in a thread. Both messages were new, I had just read the first one and the second one was marked as unread. 

- Unusual behavior I noticed:
None, apart from the usual duplicate mails of KMail. Wasn't a duplicate in this case, though.


- Custom settings of the application:

The application retrieves mail from a couple of POP3 accounts, and I have several rules in place to automatically place messages in the corresponding folders. The rules did not apply to the messages that caused the crash.

The crash does not seem to be reproducible.

-- Backtrace:
Application: KMail (kmail), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f905a7f0800 (LWP 1577))]

Thread 6 (Thread 0x7f9036338700 (LWP 1590)):
#0  0x00007f9057b392f3 in select () at /lib64/libc.so.6
#1  0x00007f90591420df in QProcessManager::run() (this=0x7f90594cc520 <processManager()::processManager>) at io/qprocess_unix.cpp:270
#2  0x00007f905906379f in QThreadPrivate::start(void*) (arg=0x7f90594cc520 <processManager()::processManager>) at thread/qthread_unix.cpp:349
#3  0x00007f90559410a4 in start_thread () at /lib64/libpthread.so.0
#4  0x00007f9057b4008d in clone () at /lib64/libc.so.6

Thread 5 (Thread 0x7f9034867700 (LWP 1873)):
#0  0x00007f905594505f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f904b042686 in WTF::TCMalloc_PageHeap::scavengerThread() () at /usr/lib64/libQtWebKit.so.4
#2  0x00007f904b0426b9 in  () at /usr/lib64/libQtWebKit.so.4
#3  0x00007f90559410a4 in start_thread () at /lib64/libpthread.so.0
#4  0x00007f9057b4008d in clone () at /lib64/libc.so.6

Thread 4 (Thread 0x7f8fef66d700 (LWP 1874)):
#0  0x00007f905594505f in pthread_cond_wait@@GLIBC_2.3.2 () at /lib64/libpthread.so.0
#1  0x00007f904adb4e7d in JSC::BlockAllocator::blockFreeingThreadMain() () at /usr/lib64/libQtWebKit.so.4
#2  0x00007f904b06a1e6 in WTF::wtfThreadEntryPoint(void*) () at /usr/lib64/libQtWebKit.so.4
#3  0x00007f90559410a4 in start_thread () at /lib64/libpthread.so.0
#4  0x00007f9057b4008d in clone () at /lib64/libc.so.6

Thread 3 (Thread 0x7f8fee85c700 (LWP 1879)):
#0  0x00007f9057b3c019 in syscall () at /lib64/libc.so.6
#1  0x00007f9059062243 in QMutexPrivate::wait(int) (val2=0, addr2=0x0, timeout=0x0, val=2, op=0, addr=0x1392f30) at thread/qmutex_unix.cpp:99
#2  0x00007f9059062243 in QMutexPrivate::wait(int) (this=this@entry=0x1392f30, timeout=timeout@entry=-1) at thread/qmutex_unix.cpp:113
#3  0x00007f905905e6c5 in QMutex::lockInternal() (this=this@entry=0x1396a00) at thread/qmutex.cpp:450
#4  0x00007f9059179052 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (this=0x1396a00) at ../../src/corelib/thread/qmutex.h:190
#5  0x00007f9059179052 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (m=<optimized out>, this=0x7f8fee85b710) at ../../src/corelib/thread/qmutex.h:109
#6  0x00007f9059179052 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=0x7f8fe0003e00, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3497
#7  0x00007f905917d3b1 in QObject::event(QEvent*) (this=0x7f8fe0003e00, e=<optimized out>) at kernel/qobject.cpp:1193
#8  0x00007f90584fe76c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x1276760, receiver=receiver@entry=0x7f8fe0003e00, e=e@entry=0x7f8fee85bba0) at kernel/qapplication.cpp:4565
#9  0x00007f9058504cad in QApplication::notify(QObject*, QEvent*) (this=this@entry=0x7ffe76494920, receiver=receiver@entry=0x7f8fe0003e00, e=e@entry=0x7f8fee85bba0) at kernel/qapplication.cpp:4351
#10 0x00007f905a26ae0a in KApplication::notify(QObject*, QEvent*) (this=0x7ffe76494920, receiver=0x7f8fe0003e00, event=0x7f8fee85bba0) at /usr/src/debug/kdelibs-4.14.9/kdeui/kernel/kapplication.cpp:311
#11 0x00007f90591652ad in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffe76494920, receiver=0x7f8fe0003e00, event=0x7f8fee85bba0) at kernel/qcoreapplication.cpp:953
#12 0x00007f9059194cbc in QTimerInfoList::activateTimers() (event=<optimized out>, receiver=<optimized out>) at kernel/qcoreapplication.h:231
#13 0x00007f9059194cbc in QTimerInfoList::activateTimers() (this=0x7f8fe0002ee0) at kernel/qeventdispatcher_unix.cpp:636
#14 0x00007f9059191f01 in timerSourceDispatch(GSource*, GSourceFunc, gpointer) (source=<optimized out>) at kernel/qeventdispatcher_glib.cpp:193
#15 0x00007f904f86ea04 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#16 0x00007f904f86ec48 in  () at /usr/lib64/libglib-2.0.so.0
#17 0x00007f904f86ecec in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#18 0x00007f90591920de in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f8fe00008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:452
#19 0x00007f9059163e6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f8fee85bde0, flags=...) at kernel/qeventloop.cpp:149
#20 0x00007f9059164165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f8fee85bde0, flags=...) at kernel/qeventloop.cpp:204
#21 0x00007f90590610bf in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:538
#22 0x00007f905906379f in QThreadPrivate::start(void*) (arg=0x1a0b630) at thread/qthread_unix.cpp:349
#23 0x00007f90559410a4 in start_thread () at /lib64/libpthread.so.0
#24 0x00007f9057b4008d in clone () at /lib64/libc.so.6

Thread 2 (Thread 0x7f8fe7fff700 (LWP 3038)):
#0  0x00007f9057b3c019 in syscall () at /lib64/libc.so.6
#1  0x00007f9059062243 in QMutexPrivate::wait(int) (val2=0, addr2=0x0, timeout=0x0, val=2, op=0, addr=0x190bc90) at thread/qmutex_unix.cpp:99
#2  0x00007f9059062243 in QMutexPrivate::wait(int) (this=this@entry=0x190bc90, timeout=timeout@entry=-1) at thread/qmutex_unix.cpp:113
#3  0x00007f905905e6c5 in QMutex::lockInternal() (this=this@entry=0x1ca5250) at thread/qmutex.cpp:450
#4  0x00007f905917dd89 in QObject::~QObject() (this=0x1ca5250) at ../../src/corelib/thread/qmutex.h:190
#5  0x00007f905917dd89 in QObject::~QObject() (mtx2=0x1ca5250, mtx1=0x1396a00) at ../../src/corelib/thread/qorderedmutexlocker_p.h:103
#6  0x00007f905917dd89 in QObject::~QObject() (this=0x34c28e0, __in_chrg=<optimized out>) at kernel/qobject.cpp:908
#7  0x00007f9056b0d609 in QHttpThreadDelegate::~QHttpThreadDelegate() (this=0x34c28e0, __in_chrg=<optimized out>) at access/qhttpthreaddelegate.cpp:190
#8  0x00007f905917d5d8 in QObject::event(QEvent*) (this=0x34c28e0, e=<optimized out>) at kernel/qobject.cpp:1212
#9  0x00007f90584fe76c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x1276760, receiver=receiver@entry=0x34c28e0, e=e@entry=0x7f8fdc008420) at kernel/qapplication.cpp:4565
#10 0x00007f9058504cad in QApplication::notify(QObject*, QEvent*) (this=this@entry=0x7ffe76494920, receiver=receiver@entry=0x34c28e0, e=e@entry=0x7f8fdc008420) at kernel/qapplication.cpp:4351
#11 0x00007f905a26ae0a in KApplication::notify(QObject*, QEvent*) (this=0x7ffe76494920, receiver=0x34c28e0, event=0x7f8fdc008420) at /usr/src/debug/kdelibs-4.14.9/kdeui/kernel/kapplication.cpp:311
#12 0x00007f90591652ad in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffe76494920, receiver=receiver@entry=0x34c28e0, event=event@entry=0x7f8fdc008420) at kernel/qcoreapplication.cpp:953
#13 0x00007f905916857d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (event=0x7f8fdc008420, receiver=0x34c28e0) at kernel/qcoreapplication.h:231
#14 0x00007f905916857d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x4510580) at kernel/qcoreapplication.cpp:1577
#15 0x00007f9059168a23 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1470
#16 0x00007f90591928fe in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) () at kernel/qcoreapplication.h:236
#17 0x00007f90591928fe in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x7f8fdc006e80) at kernel/qeventdispatcher_glib.cpp:300
#18 0x00007f904f86ea04 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#19 0x00007f904f86ec48 in  () at /usr/lib64/libglib-2.0.so.0
#20 0x00007f904f86ecec in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#21 0x00007f90591920be in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7f8fdc007f40, flags=...) at kernel/qeventdispatcher_glib.cpp:450
#22 0x00007f9059163e6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f8fe7ffede0, flags=...) at kernel/qeventloop.cpp:149
#23 0x00007f9059164165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7f8fe7ffede0, flags=...) at kernel/qeventloop.cpp:204
#24 0x00007f90590610bf in QThread::exec() (this=<optimized out>) at thread/qthread.cpp:538
#25 0x00007f905906379f in QThreadPrivate::start(void*) (arg=0x47a0060) at thread/qthread_unix.cpp:349
#26 0x00007f90559410a4 in start_thread () at /lib64/libpthread.so.0
#27 0x00007f9057b4008d in clone () at /lib64/libc.so.6

Thread 1 (Thread 0x7f905a7f0800 (LWP 1577)):
[KCrash Handler]
#6  0x00007f9057a90187 in raise () at /lib64/libc.so.6
#7  0x00007f9057a91538 in abort () at /lib64/libc.so.6
#8  0x00007f905807e145 in __gnu_cxx::__verbose_terminate_handler() () at /usr/lib64/libstdc++.so.6
#9  0x00007f905807c2e6 in  () at /usr/lib64/libstdc++.so.6
#10 0x00007f905807c313 in  () at /usr/lib64/libstdc++.so.6
#11 0x00007f905807cdcf in  () at /usr/lib64/libstdc++.so.6
#12 0x00007f9059168d8e in QCoreApplication::postEvent(QObject*, QEvent*, int) (receiver=0x34c28e0, event=event@entry=0x1805b30, priority=priority@entry=0) at kernel/qcoreapplication.cpp:1399
#13 0x00007f9059168e67 in QCoreApplication::postEvent(QObject*, QEvent*) (receiver=<optimized out>, event=event@entry=0x1805b30) at kernel/qcoreapplication.cpp:1311
#14 0x00007f905917955c in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (argv=0x7ffe764932d0, c=0x2b785f0, signal=13, sender=0x2e43640) at kernel/qobject.cpp:3456
#15 0x00007f905917955c in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=sender@entry=0x2e43640, m=m@entry=0x7f9056dbc020 <QNetworkAccessHttpBackend::staticMetaObject>, local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x0) at kernel/qobject.cpp:3532
#16 0x00007f9056b6d000 in QNetworkAccessHttpBackend::startHttpRequest() (this=this@entry=0x2e43640) at .moc/release-shared/moc_qnetworkaccesshttpbackend_p.cpp:154
#17 0x00007f9056af0f91 in QNetworkAccessHttpBackend::postRequest() (this=0x2e43640) at access/qnetworkaccesshttpbackend.cpp:679
#18 0x00007f9056ae6d6b in QNetworkAccessBackend::start() (this=0x2e43640) at access/qnetworkaccessbackend.cpp:426
#19 0x00007f9056b0129f in QNetworkReplyImplPrivate::_q_startOperation() (this=this@entry=0x2cbdf10) at access/qnetworkreplyimpl.cpp:93
#20 0x00007f9056b01a6e in QNetworkReplyImplPrivate::setup(QNetworkAccessManager::Operation, QNetworkRequest const&, QIODevice*) (this=this@entry=0x2cbdf10, op=op@entry=QNetworkAccessManager::GetOperation, req=..., data=data@entry=0x0) at access/qnetworkreplyimpl.cpp:374
#21 0x00007f9056ae2fc4 in QNetworkAccessManager::createRequest(QNetworkAccessManager::Operation, QNetworkRequest const&, QIODevice*) (this=0x4510610, op=QNetworkAccessManager::GetOperation, req=..., outgoingData=0x0) at access/qnetworkaccessmanager.cpp:1010
#22 0x00007f9056ae0184 in QNetworkAccessManager::get(QNetworkRequest const&) (this=0x4510610, request=...) at access/qnetworkaccessmanager.cpp:598
#23 0x00007f905348a6ad in PimCommon::GravatarResolvUrlJob::start() () at /usr/lib64/libpimcommon.so.4
#24 0x00007f9050c19a27 in  () at /usr/lib64/libmessageviewer.so.4
#25 0x00007f9050c8186c in  () at /usr/lib64/libmessageviewer.so.4
#26 0x00007f90591791fa in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (sender=0x1f1e4c0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7ffe76493f40) at kernel/qobject.cpp:3576
#27 0x00007f9059c99352 in KJob::result(KJob*) () at /usr/lib64/libkdecore.so.5
#28 0x00007f9059c99390 in KJob::emitResult() () at /usr/lib64/libkdecore.so.5
#29 0x00007f905917d59e in QObject::event(QEvent*) (this=0x1f1e4c0, e=<optimized out>) at kernel/qobject.cpp:1231
#30 0x00007f90584fe76c in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x1276760, receiver=receiver@entry=0x1f1e4c0, e=e@entry=0x47be8d0) at kernel/qapplication.cpp:4565
#31 0x00007f9058504cad in QApplication::notify(QObject*, QEvent*) (this=this@entry=0x7ffe76494920, receiver=receiver@entry=0x1f1e4c0, e=e@entry=0x47be8d0) at kernel/qapplication.cpp:4351
#32 0x00007f905a26ae0a in KApplication::notify(QObject*, QEvent*) (this=0x7ffe76494920, receiver=0x1f1e4c0, event=0x47be8d0) at /usr/src/debug/kdelibs-4.14.9/kdeui/kernel/kapplication.cpp:311
#33 0x00007f90591652ad in QCoreApplication::notifyInternal(QObject*, QEvent*) (this=0x7ffe76494920, receiver=receiver@entry=0x1f1e4c0, event=event@entry=0x47be8d0) at kernel/qcoreapplication.cpp:953
#34 0x00007f905916857d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (event=0x47be8d0, receiver=0x1f1e4c0) at kernel/qcoreapplication.h:231
#35 0x00007f905916857d in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x11df860) at kernel/qcoreapplication.cpp:1577
#36 0x00007f9059168a23 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1470
#37 0x00007f90591928fe in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) () at kernel/qcoreapplication.h:236
#38 0x00007f90591928fe in postEventSourceDispatch(GSource*, GSourceFunc, gpointer) (s=0x1280c60) at kernel/qeventdispatcher_glib.cpp:300
#39 0x00007f904f86ea04 in g_main_context_dispatch () at /usr/lib64/libglib-2.0.so.0
#40 0x00007f904f86ec48 in  () at /usr/lib64/libglib-2.0.so.0
#41 0x00007f904f86ecec in g_main_context_iteration () at /usr/lib64/libglib-2.0.so.0
#42 0x00007f90591920be in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x11e5100, flags=...) at kernel/qeventdispatcher_glib.cpp:450
#43 0x00007f905859b676 in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#44 0x00007f9059163e6f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe76494570, flags=...) at kernel/qeventloop.cpp:149
#45 0x00007f9059164165 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ffe76494570, flags=...) at kernel/qeventloop.cpp:204
#46 0x00007f90591695b9 in QCoreApplication::exec() () at kernel/qcoreapplication.cpp:1225
#47 0x00007f90584fcf3c in QApplication::exec() () at kernel/qapplication.cpp:3823
#48 0x0000000000402f3f in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kdepim-4.14.9/kmail/main.cpp:145

Reported using DrKonqi
Comment 1 Denis Kurz 2017-06-23 20:20:24 UTC
This bug has never been confirmed for a Kontact version that is based on KDE Frameworks, except possibly a Technology Preview version 5.0.x. Those versions differ significantly from the old 4.x series. Therefore, I plan to close it in around two or three months. In the meantime, it is set to WAITINGFORINFO to give reporters the opportunity to check if it is still valid. As soon as someone confirms it for a recent version (at least 5.1, ideally even more recent), I'll gladly reopen it.

Please understand that we lack the manpower to triage bugs reported for versions almost two years beyond their end of life.
Comment 2 Denis Kurz 2018-01-31 16:52:12 UTC
Just as announced in my last comment, I close this bug. If you encounter it again in a recent version (at least 5.1 aka 15.12, preferably more recent), please open a new one unless it already exists. Thank you for all your input.