[kmail2] [Bug 317055] New: Removing resource from KOrganizer crashes KMail

Dan Vrátil dvratil at redhat.com
Wed Mar 20 00:18:48 GMT 2013


https://bugs.kde.org/show_bug.cgi?id=317055

            Bug ID: 317055
           Summary: Removing resource from KOrganizer crashes KMail
    Classification: Unclassified
           Product: kmail2
           Version: unspecified
          Platform: Compiled Sources
                OS: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: general
          Assignee: kdepim-bugs at kde.org
          Reporter: dvratil at redhat.com

Application: kmail (4.11 pre)
KDE Platform Version: 4.10.1 (Compiled from sources)
Qt Version: 4.8.4
Operating System: Linux 3.8.3-201.fc18.x86_64 x86_64
Distribution: "Fedora release 18 (Spherical Cow)"

-- Information about the crash:
- What I was doing when the application crashed:
I had KMail minimized and running. I removed an Akonadi resource (Google
Calendar resource to be specific) from KOrganizer and switched back to KMail.
At that moment KMail crashed.

The problem is apparently in some of the proxy models on top of ETM which does
not handle removed collections that don't have message/rfc822 mimetype.

This crash can be fixed by not loading non-email collections in ETM (see
https://git.reviewboard.kde.org/r/109259/). It's been requested in the review
though that the crash is properly investigated and the faulty proxy model is
fixed. hence this report.

Note that the crash can be reproduced on several other places in ETM (all of
them asserts) using the steps.

The crash can be reproduced every time.

-- Backtrace:
Application: KMail (kmail), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
40      int result = INLINE_SYSCALL (wait4, 4, pid, stat_loc, options, NULL);
[Current thread is 1 (Thread 0x7fa913da2880 (LWP 12836))]

Thread 6 (Thread 0x7fa908509700 (LWP 12842)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:165
#1  0x0000003d938a0e85 in WTF::TCMalloc_PageHeap::scavengerThread
(this=0x3d94333a20 <WTF::pageheap_memory>) at
/usr/src/debug/webkit-qtwebkit-23/Source/WTF/wtf/FastMalloc.cpp:2571
#2  0x0000003d938a0ed9 in WTF::TCMalloc_PageHeap::runScavengerThread
(context=<optimized out>) at
/usr/src/debug/webkit-qtwebkit-23/Source/WTF/wtf/FastMalloc.cpp:1767
#3  0x00000039070aa764 in ?? () from /usr/lib64/nvidia/libGL.so.1
#4  0x0000003dfbc07d15 in start_thread (arg=0x7fa908509700) at
pthread_create.c:308
#5  0x0000003dfb4f246d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:114

Thread 5 (Thread 0x7fa8c6aa0700 (LWP 12843)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:165
#1  0x0000003d935e74f9 in JSC::BlockAllocator::blockFreeingThreadMain
(this=0x7fa907c72398) at
/usr/src/debug/webkit-qtwebkit-23/Source/JavaScriptCore/heap/BlockAllocator.cpp:128
#2  0x0000003d938cf60e in WTF::wtfThreadEntryPoint (param=0x13b4bd0) at
/usr/src/debug/webkit-qtwebkit-23/Source/WTF/wtf/ThreadingPthreads.cpp:196
#3  0x00000039070aa764 in ?? () from /usr/lib64/nvidia/libGL.so.1
#4  0x0000003dfbc07d15 in start_thread (arg=0x7fa8c6aa0700) at
pthread_create.c:308
#5  0x0000003dfb4f246d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:114

Thread 4 (Thread 0x7fa8c5450700 (LWP 12845)):
#0  0x00000038ffa19ae0 in pthread_mutex_unlock at plt () from
/lib64/libglib-2.0.so.0
#1  0x00000038ffa84dd1 in g_mutex_unlock (mutex=mutex at entry=0x7fa8bc0009d0) at
gthread-posix.c:229
#2  0x00000038ffa475ab in g_main_context_prepare
(context=context at entry=0x7fa8bc0009d0, priority=priority at entry=0x7fa8c544fae8)
at gmain.c:2984
#3  0x00000038ffa47c4b in g_main_context_iterate
(context=context at entry=0x7fa8bc0009d0, block=block at entry=1,
dispatch=dispatch at entry=1, self=<optimized out>) at gmain.c:3270
#4  0x00000038ffa47e44 in g_main_context_iteration (context=0x7fa8bc0009d0,
may_block=1) at gmain.c:3351
#5  0x0000003e6f7a6126 in QEventDispatcherGlib::processEvents
(this=0x7fa8bc0008f0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#6  0x0000003e6f77680f in QEventLoop::processEvents
(this=this at entry=0x7fa8c544fc40, flags=...) at kernel/qeventloop.cpp:149
#7  0x0000003e6f776a98 in QEventLoop::exec (this=0x7fa8c544fc40, flags=...) at
kernel/qeventloop.cpp:204
#8  0x0000003e6f678980 in QThread::exec (this=<optimized out>) at
thread/qthread.cpp:542
#9  0x0000003e6f67b95c in QThreadPrivate::start (arg=0x13050e0) at
thread/qthread_unix.cpp:338
#10 0x00000039070aa764 in ?? () from /usr/lib64/nvidia/libGL.so.1
#11 0x0000003dfbc07d15 in start_thread (arg=0x7fa8c5450700) at
pthread_create.c:308
#12 0x0000003dfb4f246d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:114

Thread 3 (Thread 0x7fa8b616e700 (LWP 13272)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:217
#1  0x0000003e6f67be17 in wait (time=30000, this=0x14ee970) at
thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x14ef158, time=30000) at
thread/qwaitcondition_unix.cpp:158
#3  0x0000003e6f66f69f in QThreadPoolThread::run (this=0x1504720) at
concurrent/qthreadpool.cpp:141
#4  0x0000003e6f67b95c in QThreadPrivate::start (arg=0x1504720) at
thread/qthread_unix.cpp:338
#5  0x00000039070aa764 in ?? () from /usr/lib64/nvidia/libGL.so.1
#6  0x0000003dfbc07d15 in start_thread (arg=0x7fa8b616e700) at
pthread_create.c:308
#7  0x0000003dfb4f246d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:114

Thread 2 (Thread 0x7fa8c5e70700 (LWP 13274)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at
../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:217
#1  0x0000003e6f67be17 in wait (time=30000, this=0x1d72eb0) at
thread/qwaitcondition_unix.cpp:84
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x1db0fd8, time=30000) at
thread/qwaitcondition_unix.cpp:158
#3  0x0000003e6f66f69f in QThreadPoolThread::run (this=0x1dae8e0) at
concurrent/qthreadpool.cpp:141
#4  0x0000003e6f67b95c in QThreadPrivate::start (arg=0x1dae8e0) at
thread/qthread_unix.cpp:338
#5  0x00000039070aa764 in ?? () from /usr/lib64/nvidia/libGL.so.1
#6  0x0000003dfbc07d15 in start_thread (arg=0x7fa8c5e70700) at
pthread_create.c:308
#7  0x0000003dfb4f246d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:114

Thread 1 (Thread 0x7fa913da2880 (LWP 12836)):
[KCrash Handler]
#5  0x0000003dfb435ba5 in __GI_raise (sig=sig at entry=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:63
#6  0x0000003dfb437358 in __GI_abort () at abort.c:90
#7  0x0000003e6f671564 in qt_message_output (msgType=msgType at entry=QtFatalMsg,
buf=<optimized out>) at global/qglobal.cpp:2323
#8  0x0000003e6f671718 in qt_message(QtMsgType, const char *, typedef
__va_list_tag __va_list_tag *) (msgType=msgType at entry=QtFatalMsg,
msg=0x3e6f7da448 "ASSERT: \"%s\" in file %s, line %d",
ap=ap at entry=0x7fff8845f0a8) at global/qglobal.cpp:2369
#9  0x0000003e6f6718a4 in qFatal (msg=<optimized out>) at
global/qglobal.cpp:2552
#10 0x00007fa91a5e5dc0 in Akonadi::CollectionStatisticsDelegate::paint
(this=<optimized out>, painter=0x7fff8845fa20, option=..., index=...) at
/home/progdan/projects/kde/kdepimlibs/akonadi/collectionstatisticsdelegate.cpp:238
#11 0x00000033bd70f2a3 in QTreeView::drawRow (this=0xce80d0,
painter=0x7fff8845fa20, option=..., index=...) at itemviews/qtreeview.cpp:1694
#12 0x00000033bd713b7f in QTreeView::drawTree (this=this at entry=0xce80d0,
painter=painter at entry=0x7fff8845fa20, region=...) at
itemviews/qtreeview.cpp:1447
#13 0x00000033bd71437c in QTreeView::paintEvent (this=0xce80d0,
event=0x7fff88460690) at itemviews/qtreeview.cpp:1275
#14 0x00000033bd219efe in QWidget::event (this=0xce80d0, event=0x7fff88460690)
at kernel/qwidget.cpp:8532
#15 0x00000033bd5c49f6 in QFrame::event (this=0xce80d0, e=0x7fff88460690) at
widgets/qframe.cpp:557
#16 0x00000033bd6d020b in QAbstractItemView::viewportEvent (this=0xce80d0,
event=0x7fff88460690) at itemviews/qabstractitemview.cpp:1644
#17 0x00000033bd714a91 in QTreeView::viewportEvent (this=0xce80d0,
event=0x7fff88460690) at itemviews/qtreeview.cpp:1257
#18 0x0000003e6f777c26 in
QCoreApplicationPrivate::sendThroughObjectEventFilters (this=<optimized out>,
receiver=0xd43af0, event=0x7fff88460690) at kernel/qcoreapplication.cpp:1056
#19 0x00000033bd1ca59c in QApplicationPrivate::notify_helper (this=0xc889c0,
receiver=0xd43af0, e=0x7fff88460690) at kernel/qapplication.cpp:4558
#20 0x00000033bd1cea4a in QApplication::notify (this=0x7fff88464330,
receiver=0xd43af0, e=0x7fff88460690) at kernel/qapplication.cpp:4423
#21 0x0000003d896473c6 in KApplication::notify (this=0x7fff88464330,
receiver=0xd43af0, event=0x7fff88460690) at
/usr/src/debug/kdelibs-4.10.1/kdeui/kernel/kapplication.cpp:311
#22 0x0000003e6f777abe in QCoreApplication::notifyInternal
(this=0x7fff88464330, receiver=0xd43af0, event=0x7fff88460690) at
kernel/qcoreapplication.cpp:946
#23 0x00000033bd215ac4 in QWidgetPrivate::drawWidget (this=0xeef550,
pdev=0xedd720, rgn=..., offset=..., flags=4, sharedPainter=0x0,
backingStore=0x1316530) at ../../src/corelib/kernel/qcoreapplication.h:234
#24 0x00000033bd2165bf in QWidgetPrivate::paintSiblingsRecursive
(this=0x11e00b0, pdev=0xedd720, siblings=..., index=<optimized out>, rgn=...,
offset=..., flags=4, sharedPainter=0x0, backingStore=0x1316530) at
kernel/qwidget.cpp:5807
#25 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x11e00b0, pdev=0xedd720, siblings=..., index=3, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#26 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x11e00b0, pdev=0xedd720, siblings=..., index=9, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#27 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x11e00b0, pdev=0xedd720, siblings=..., index=10, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#28 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x11e00b0, pdev=0xedd720, siblings=..., index=11, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#29 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x11e00b0, pdev=0xedd720, siblings=..., index=12, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#30 0x00000033bd215655 in QWidgetPrivate::drawWidget (this=0x11e00b0,
pdev=0xedd720, rgn=..., offset=..., flags=<optimized out>, sharedPainter=0x0,
backingStore=0x1316530) at kernel/qwidget.cpp:5651
#31 0x00000033bd2165bf in QWidgetPrivate::paintSiblingsRecursive
(this=0x105bbe0, pdev=0xedd720, siblings=..., index=<optimized out>, rgn=...,
offset=..., flags=4, sharedPainter=0x0, backingStore=0x1316530) at
kernel/qwidget.cpp:5807
#32 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x105bbe0, pdev=0xedd720, siblings=..., index=2, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#33 0x00000033bd215655 in QWidgetPrivate::drawWidget (this=0x105bbe0,
pdev=0xedd720, rgn=..., offset=..., flags=<optimized out>, sharedPainter=0x0,
backingStore=0x1316530) at kernel/qwidget.cpp:5651
#34 0x00000033bd2165bf in QWidgetPrivate::paintSiblingsRecursive
(this=0x13ec840, pdev=0xedd720, siblings=..., index=<optimized out>, rgn=...,
offset=..., flags=4, sharedPainter=0x0, backingStore=0x1316530) at
kernel/qwidget.cpp:5807
#35 0x00000033bd215655 in QWidgetPrivate::drawWidget (this=0x13ec840,
pdev=0xedd720, rgn=..., offset=..., flags=<optimized out>, sharedPainter=0x0,
backingStore=0x1316530) at kernel/qwidget.cpp:5651
#36 0x00000033bd2165bf in QWidgetPrivate::paintSiblingsRecursive
(this=0x1546010, pdev=0xedd720, siblings=..., index=<optimized out>, rgn=...,
offset=..., flags=4, sharedPainter=0x0, backingStore=0x1316530) at
kernel/qwidget.cpp:5807
#37 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x1546010, pdev=0xedd720, siblings=..., index=0, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#38 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x1546010, pdev=0xedd720, siblings=..., index=2, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#39 0x00000033bd215655 in QWidgetPrivate::drawWidget (this=0x1546010,
pdev=0xedd720, rgn=..., offset=..., flags=<optimized out>, sharedPainter=0x0,
backingStore=0x1316530) at kernel/qwidget.cpp:5651
#40 0x00000033bd2165bf in QWidgetPrivate::paintSiblingsRecursive
(this=0x15456b0, pdev=0xedd720, siblings=..., index=<optimized out>, rgn=...,
offset=..., flags=4, sharedPainter=0x0, backingStore=0x1316530) at
kernel/qwidget.cpp:5807
#41 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x15456b0, pdev=0xedd720, siblings=..., index=0, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#42 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x15456b0, pdev=0xedd720, siblings=..., index=1, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#43 0x00000033bd215655 in QWidgetPrivate::drawWidget (this=0x15456b0,
pdev=0xedd720, rgn=..., offset=..., flags=<optimized out>, sharedPainter=0x0,
backingStore=0x1316530) at kernel/qwidget.cpp:5651
#44 0x00000033bd2165bf in QWidgetPrivate::paintSiblingsRecursive
(this=0x105e800, pdev=0xedd720, siblings=..., index=<optimized out>, rgn=...,
offset=..., flags=4, sharedPainter=0x0, backingStore=0x1316530) at
kernel/qwidget.cpp:5807
#45 0x00000033bd215655 in QWidgetPrivate::drawWidget (this=0x105e800,
pdev=0xedd720, rgn=..., offset=..., flags=<optimized out>, sharedPainter=0x0,
backingStore=0x1316530) at kernel/qwidget.cpp:5651
#46 0x00000033bd2165bf in QWidgetPrivate::paintSiblingsRecursive
(this=0x1068070, pdev=0xedd720, siblings=..., index=<optimized out>, rgn=...,
offset=..., flags=4, sharedPainter=0x0, backingStore=0x1316530) at
kernel/qwidget.cpp:5807
#47 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x1068070, pdev=0xedd720, siblings=..., index=6, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#48 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x1068070, pdev=0xedd720, siblings=..., index=10, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#49 0x00000033bd216404 in QWidgetPrivate::paintSiblingsRecursive
(this=0x1068070, pdev=0xedd720, siblings=..., index=26, rgn=..., offset=...,
flags=4, sharedPainter=0x0, backingStore=0x1316530) at kernel/qwidget.cpp:5794
#50 0x00000033bd215655 in QWidgetPrivate::drawWidget (this=0x1068070,
pdev=0xedd720, rgn=..., offset=..., flags=<optimized out>, sharedPainter=0x0,
backingStore=0x1316530) at kernel/qwidget.cpp:5651
#51 0x00000033bd3dfde8 in QWidgetBackingStore::sync (this=0x1316530) at
painting/qbackingstore.cpp:1373
#52 0x00000033bd20a5f0 in QWidgetPrivate::syncBackingStore (this=0x1068070) at
kernel/qwidget.cpp:1896
#53 0x00000033bd21a3a4 in QWidget::event (this=0xcee040, event=0x41155d0) at
kernel/qwidget.cpp:8679
#54 0x00000033bd5ddf2b in QMainWindow::event (this=0xcee040, event=0x41155d0)
at widgets/qmainwindow.cpp:1478
#55 0x0000003d89739758 in KXmlGuiWindow::event (this=0xcee040, ev=0x41155d0) at
/usr/src/debug/kdelibs-4.10.1/kdeui/xmlgui/kxmlguiwindow.cpp:126
#56 0x00000033bd1ca5cc in QApplicationPrivate::notify_helper (this=0xc889c0,
receiver=0xcee040, e=0x41155d0) at kernel/qapplication.cpp:4562
#57 0x00000033bd1cea4a in QApplication::notify (this=0x7fff88464330,
receiver=0xcee040, e=0x41155d0) at kernel/qapplication.cpp:4423
#58 0x0000003d896473c6 in KApplication::notify (this=0x7fff88464330,
receiver=0xcee040, event=0x41155d0) at
/usr/src/debug/kdelibs-4.10.1/kdeui/kernel/kapplication.cpp:311
#59 0x0000003e6f777abe in QCoreApplication::notifyInternal
(this=0x7fff88464330, receiver=receiver at entry=0xcee040,
event=event at entry=0x41155d0) at kernel/qcoreapplication.cpp:946
#60 0x0000003e6f77b571 in sendEvent (event=0x41155d0, receiver=0xcee040) at
kernel/qcoreapplication.h:231
#61 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0,
data=0xb552d0) at kernel/qcoreapplication.cpp:1570
#62 0x0000003e6f7a5f73 in sendPostedEvents () at kernel/qcoreapplication.h:236
#63 postEventSourceDispatch (s=s at entry=0xc9fd60) at
kernel/qeventdispatcher_glib.cpp:279
#64 0x00000038ffa47a55 in g_main_dispatch (context=0xca0200) at gmain.c:2715
#65 g_main_context_dispatch (context=context at entry=0xca0200) at gmain.c:3219
#66 0x00000038ffa47d88 in g_main_context_iterate
(context=context at entry=0xca0200, block=block at entry=1,
dispatch=dispatch at entry=1, self=<optimized out>) at gmain.c:3290
#67 0x00000038ffa47e44 in g_main_context_iteration (context=0xca0200,
may_block=1) at gmain.c:3351
#68 0x0000003e6f7a6106 in QEventDispatcherGlib::processEvents (this=0xb56af0,
flags=...) at kernel/qeventdispatcher_glib.cpp:424
#69 0x00000033bd26a73e in QGuiEventDispatcherGlib::processEvents
(this=<optimized out>, flags=...) at kernel/qguieventdispatcher_glib.cpp:207
#70 0x0000003e6f77680f in QEventLoop::processEvents
(this=this at entry=0x7fff88464270, flags=...) at kernel/qeventloop.cpp:149
#71 0x0000003e6f776a98 in QEventLoop::exec (this=0x7fff88464270, flags=...) at
kernel/qeventloop.cpp:204
#72 0x0000003e6f77b888 in QCoreApplication::exec () at
kernel/qcoreapplication.cpp:1218
#73 0x0000000000402636 in main (argc=3, argv=0x7fff88464548) at
/home/progdan/projects/kde/kdepim/kmail/main.cpp:146

Reported using DrKonqi

-- 
You are receiving this mail because:
You are the assignee for the bug.



More information about the Kdepim-bugs mailing list