Bug 317145

Summary: Kmail Crash when selecting folder
Product: [Applications] kontact Reporter: Nathan Wolf <me>
Component: generalAssignee: kdepim bugs <kdepim-bugs>
Status: RESOLVED UNMAINTAINED    
Severity: crash CC: me
Priority: NOR    
Version: 4.10   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: New crash information added by DrKonqi

Description Nathan Wolf 2013-03-21 18:17:23 UTC
Application: kontact (4.10)
KDE Platform Version: 4.10.00 "release 1"
Qt Version: 4.8.4
Operating System: Linux 3.7.10-1.1-desktop x86_64
Distribution: "openSUSE 12.3 (x86_64)"

-- Information about the crash:
The kmail module in Kontact wasn't showing all the mail resources.  I clicked on one that was a duplicate to expand that resource in the list-tree and the program crashed.
openSUSE 12.3 Linux 3.7.10-1.1-desktop, KDE 4.10.0 "release 1"

The crash can be reproduced some of the time.

-- Backtrace:
Application: Kontact (kontact), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7ff9ea0b3780 (LWP 16262))]

Thread 5 (Thread 0x7ff9d0c18700 (LWP 16263)):
#0  0x00007ff9e1eb3964 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007ff9e68a07c7 in WTF::TCMalloc_PageHeap::scavengerThread() () from /usr/lib64/libQtWebKit.so.4
#2  0x00007ff9e68a07f9 in WTF::TCMalloc_PageHeap::runScavengerThread(void*) () from /usr/lib64/libQtWebKit.so.4
#3  0x00007ff9e1eafe0f in start_thread () from /lib64/libpthread.so.0
#4  0x00007ff9e76067dd in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7ff9d0317700 (LWP 16264)):
#0  0x00007ff9e0ee06dd in ?? () from /usr/lib64/libglib-2.0.so.0
#1  0x00007ff9e0ee0e29 in g_private_get () from /usr/lib64/libglib-2.0.so.0
#2  0x00007ff9e0ec7820 in g_thread_self () from /usr/lib64/libglib-2.0.so.0
#3  0x00007ff9e0ea3bb5 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#4  0x00007ff9e8a351f6 in QEventDispatcherGlib::processEvents (this=0x7ff9c80008c0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#5  0x00007ff9e8a059ef in QEventLoop::processEvents (this=this@entry=0x7ff9d0316e00, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007ff9e8a05c78 in QEventLoop::exec (this=0x7ff9d0316e00, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007ff9e89080f0 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:542
#8  0x00007ff9e890b0cc in QThreadPrivate::start (arg=0x20f7200) at thread/qthread_unix.cpp:338
#9  0x00007ff9e1eafe0f in start_thread () from /lib64/libpthread.so.0
#10 0x00007ff9e76067dd in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7ff97bdee700 (LWP 24569)):
#0  0x00007ff9e1eb3d11 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007ff9e890b587 in wait (time=30000, this=0x277fa60) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x2780248, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007ff9e88fed8f in QThreadPoolThread::run (this=0x2785990) at concurrent/qthreadpool.cpp:141
#4  0x00007ff9e890b0cc in QThreadPrivate::start (arg=0x2785990) at thread/qthread_unix.cpp:338
#5  0x00007ff9e1eafe0f in start_thread () from /lib64/libpthread.so.0
#6  0x00007ff9e76067dd in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7ff9825bf700 (LWP 24570)):
#0  0x00007ff9e1eb3d11 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007ff9e890b587 in wait (time=30000, this=0xa9683e0) at thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=<optimized out>, mutex=0xa96ba18, time=30000) at thread/qwaitcondition_unix.cpp:158
#3  0x00007ff9e88fed8f in QThreadPoolThread::run (this=0xa970ca0) at concurrent/qthreadpool.cpp:141
#4  0x00007ff9e890b0cc in QThreadPrivate::start (arg=0xa970ca0) at thread/qthread_unix.cpp:338
#5  0x00007ff9e1eafe0f in start_thread () from /lib64/libpthread.so.0
#6  0x00007ff9e76067dd in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7ff9ea0b3780 (LWP 16262)):
[KCrash Handler]
#6  QSortFilterProxyModelPrivate::updateChildrenMapping (this=this@entry=0x2518780, source_parent=..., parent_mapping=parent_mapping@entry=0x2ba2b50, orient=orient@entry=Qt::Vertical, start=start@entry=1, end=end@entry=1, delta_item_count=delta_item_count@entry=1, remove=remove@entry=true) at itemviews/qsortfilterproxymodel.cpp:948
#7  0x00007ff9e83398c0 in source_items_removed (orient=Qt::Vertical, end=1, start=1, source_parent=..., this=<optimized out>) at itemviews/qsortfilterproxymodel.cpp:890
#8  QSortFilterProxyModelPrivate::source_items_removed (this=0x2518780, source_parent=..., start=1, end=<optimized out>, orient=Qt::Vertical) at itemviews/qsortfilterproxymodel.cpp:848
#9  0x00007ff9e8a1c1af in QMetaObject::activate (sender=0x2493480, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff26fe9f30) at kernel/qobject.cpp:3548
#10 0x00007ff9e8a66924 in QAbstractItemModel::rowsRemoved (this=<optimized out>, _t1=..., _t2=1, _t3=1) at .moc/release-shared/moc_qabstractitemmodel.cpp:211
#11 0x00007ff9e8a0067d in QAbstractItemModel::endRemoveRows (this=0x2493480) at kernel/qabstractitemmodel.cpp:2487
#12 0x00007ff9e833c88a in QSortFilterProxyModelPrivate::remove_source_items (this=this@entry=0x2516b50, source_to_proxy=..., proxy_to_source=..., source_items=..., source_parent=..., orient=orient@entry=Qt::Vertical, emit_signal=emit_signal@entry=true) at itemviews/qsortfilterproxymodel.cpp:539
#13 0x00007ff9e833d121 in QSortFilterProxyModelPrivate::_q_sourceDataChanged (this=0x2516b50, source_top_left=..., source_bottom_right=...) at itemviews/qsortfilterproxymodel.cpp:1161
#14 0x00007ff9e8a0ebb7 in QMetaMethod::invoke (this=this@entry=0x7fff26fea410, object=object@entry=0x2493480, connectionType=connectionType@entry=Qt::DirectConnection, returnValue=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1664
#15 0x00007ff9e8a10f8c in QMetaObject::invokeMethod (obj=0x2493480, member=<optimized out>, type=Qt::DirectConnection, ret=..., val0=..., val1=..., val2=..., val3=..., val4=..., val5=..., val6=..., val7=..., val8=..., val9=...) at kernel/qmetaobject.cpp:1179
#16 0x00007ff9e9430213 in invokeMethod (val9=..., val8=..., val7=..., val6=..., val5=..., val4=..., val3=..., val2=..., val1=..., val0=..., type=Qt::DirectConnection, member=0x7ff9e95c866b "_q_sourceDataChanged", obj=0x2493480) at /usr/include/QtCore/qobjectdefs.h:418
#17 invokeDataChanged (bottomRight=..., topLeft=..., this=<optimized out>) at /usr/src/debug/kdelibs-4.10.0/kdeui/itemviews/krecursivefilterproxymodel.cpp:55
#18 KRecursiveFilterProxyModelPrivate::sourceDataChanged (this=0x23a3a50, source_top_left=..., source_bottom_right=...) at /usr/src/debug/kdelibs-4.10.0/kdeui/itemviews/krecursivefilterproxymodel.cpp:131
#19 0x00007ff9e8a1c1af in QMetaObject::activate (sender=0x251b040, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff26fea9b0) at kernel/qobject.cpp:3548
#20 0x00007ff9e8a66747 in QAbstractItemModel::dataChanged (this=<optimized out>, _t1=..., _t2=...) at .moc/release-shared/moc_qabstractitemmodel.cpp:164
#21 0x00007ff9e942e4a7 in KIdentityProxyModelPrivate::_k_sourceDataChanged (this=<optimized out>, topLeft=..., bottomRight=...) at /usr/src/debug/kdelibs-4.10.0/kdeui/itemviews/kidentityproxymodel.cpp:573
#22 0x00007ff9e8a1c1af in QMetaObject::activate (sender=0x25165e0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff26feab60) at kernel/qobject.cpp:3548
#23 0x00007ff9e8a66747 in QAbstractItemModel::dataChanged (this=<optimized out>, _t1=..., _t2=...) at .moc/release-shared/moc_qabstractitemmodel.cpp:164
#24 0x00007ff9e942e4a7 in KIdentityProxyModelPrivate::_k_sourceDataChanged (this=<optimized out>, topLeft=..., bottomRight=...) at /usr/src/debug/kdelibs-4.10.0/kdeui/itemviews/kidentityproxymodel.cpp:573
#25 0x00007ff9e8a1c1af in QMetaObject::activate (sender=0x23a5320, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff26fead10) at kernel/qobject.cpp:3548
#26 0x00007ff9e8a66747 in QAbstractItemModel::dataChanged (this=<optimized out>, _t1=..., _t2=...) at .moc/release-shared/moc_qabstractitemmodel.cpp:164
#27 0x00007ff9e833ccca in QSortFilterProxyModelPrivate::_q_sourceDataChanged (this=0x1f26350, source_top_left=..., source_bottom_right=...) at itemviews/qsortfilterproxymodel.cpp:1210
#28 0x00007ff9e8a1c1af in QMetaObject::activate (sender=0x23ce710, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff26feafb0) at kernel/qobject.cpp:3548
#29 0x00007ff9e8a66747 in QAbstractItemModel::dataChanged (this=<optimized out>, _t1=..., _t2=...) at .moc/release-shared/moc_qabstractitemmodel.cpp:164
#30 0x00007ff9e42ccbbb in Akonadi::EntityTreeModelPrivate::changeFetchState (this=<optimized out>, parent=...) at /usr/src/debug/kdepimlibs-4.10.0/akonadi/entitytreemodel_p.cpp:235
#31 0x00007ff9e8a1b68e in QObject::event (this=0x23ce710, e=<optimized out>) at kernel/qobject.cpp:1203
#32 0x00007ff9e7db086c in QApplicationPrivate::notify_helper (this=this@entry=0x1f42650, receiver=receiver@entry=0x23ce710, e=e@entry=0xe405630) at kernel/qapplication.cpp:4562
#33 0x00007ff9e7db4ceb in QApplication::notify (this=0x7fff26feba80, receiver=0x23ce710, e=0xe405630) at kernel/qapplication.cpp:4423
#34 0x00007ff9e946bcb6 in KApplication::notify (this=0x7fff26feba80, receiver=0x23ce710, event=0xe405630) at /usr/src/debug/kdelibs-4.10.0/kdeui/kernel/kapplication.cpp:311
#35 0x00007ff9e8a06c9e in QCoreApplication::notifyInternal (this=0x7fff26feba80, receiver=receiver@entry=0x23ce710, event=event@entry=0xe405630) at kernel/qcoreapplication.cpp:946
#36 0x00007ff9e8a0a601 in sendEvent (event=0xe405630, receiver=0x23ce710) at kernel/qcoreapplication.h:231
#37 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x1f01670) at kernel/qcoreapplication.cpp:1570
#38 0x00007ff9e8a35043 in sendPostedEvents () at kernel/qcoreapplication.h:236
#39 postEventSourceDispatch (s=0x1f36f00) at kernel/qeventdispatcher_glib.cpp:279
#40 0x00007ff9e0ea37d5 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#41 0x00007ff9e0ea3b08 in ?? () from /usr/lib64/libglib-2.0.so.0
#42 0x00007ff9e0ea3bc4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#43 0x00007ff9e8a351d6 in QEventDispatcherGlib::processEvents (this=0x1f06ad0, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#44 0x00007ff9e7e50c1e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#45 0x00007ff9e8a059ef in QEventLoop::processEvents (this=this@entry=0x7fff26feb8f0, flags=...) at kernel/qeventloop.cpp:149
#46 0x00007ff9e8a05c78 in QEventLoop::exec (this=0x7fff26feb8f0, flags=...) at kernel/qeventloop.cpp:204
#47 0x00007ff9e8a0a918 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1218
#48 0x0000000000403679 in main (argc=1, argv=0x7fff26febbc8) at /usr/src/debug/kdepim-4.10.0/kontact/src/main.cpp:219

Possible duplicates by query: bug 311779, bug 309147, bug 306051, bug 304219, bug 304109.

Reported using DrKonqi
Comment 1 Nathan Wolf 2013-04-23 19:46:41 UTC
Created attachment 79400 [details]
New crash information added by DrKonqi

kontact (4.10.2) on KDE Platform 4.10.2 "release 556" using Qt 4.8.4

Typed in quick search field to filter out the desired folder.  After two letters, Kmail along with Kontact crashed.

-- Backtrace (Reduced):
#6  QSortFilterProxyModelPrivate::updateChildrenMapping (this=this@entry=0x1097300, source_parent=..., parent_mapping=parent_mapping@entry=0xb5199e0, orient=orient@entry=Qt::Vertical, start=start@entry=2, end=end@entry=2, delta_item_count=delta_item_count@entry=1, remove=remove@entry=true) at itemviews/qsortfilterproxymodel.cpp:948
#7  0x00007fa4938728c0 in source_items_removed (orient=Qt::Vertical, end=2, start=2, source_parent=..., this=<optimized out>) at itemviews/qsortfilterproxymodel.cpp:890
#8  QSortFilterProxyModelPrivate::source_items_removed (this=0x1097300, source_parent=..., start=2, end=<optimized out>, orient=Qt::Vertical) at itemviews/qsortfilterproxymodel.cpp:848
[...]
#10 0x00007fa493f9f924 in QAbstractItemModel::rowsRemoved (this=<optimized out>, _t1=..., _t2=2, _t3=2) at .moc/release-shared/moc_qabstractitemmodel.cpp:211
#11 0x00007fa493f3967d in QAbstractItemModel::endRemoveRows (this=0x15464c0) at kernel/qabstractitemmodel.cpp:2487
Comment 2 Denis Kurz 2016-09-24 19:33:32 UTC
This bug has only been reported for versions before 4.14, which have been unsupported for at least two years now. Can anyone tell if this bug still present?

If noone confirms this bug for a Framework-based version of kontact (version 5.0 or later, as part of KDE Applications 15.08 or later), it gets closed in about three months.
Comment 3 Denis Kurz 2017-01-07 22:18:44 UTC
Just as announced in my last comment, I close this bug. If you encounter it again in a recent version (at least 5.0 aka 15.08), please open a new one unless it already exists. Thank you for all your input.