Version: (using KDE 4.2.0) OS: Linux Installed from: Debian testing/unstable Packages Debian's KDE 4:4.2.0-1 packages from experimental. kmail crashes sometimes (haven't yet figured out how to reproduce - sometimes it crashes, sometimes it doesn't) when I enter a folder by clicking on the folder list. I'll attach the crashdump. cheers -- vbi
Created attachment 30964 [details] crash dump of one instance of the bug. Oh yes: this is dimap over SSL against dovecot (Debian package 1:1.0.15-2.3) with mbox storage. Although judging from the crash it seems to be a qt problem, not a backend problem.
Pasted backtrace from comment 1: Application: KMail (kmail), signal SIGSEGV [Current thread is 0 (LWP 20745)] Thread 2 (Thread 0xb1b94b90 (LWP 21384)): #0 0xb7f17424 in __kernel_vsyscall () #1 0x45c1bab1 in select () from /lib/i686/cmov/libc.so.6 #2 0x4637ed00 in QProcessManager::run (this=) at io/qprocess_unix.cpp:301 #3 0x462afbce in QThreadPrivate::start (arg=<value optimized out>) at thread/qthread_unix.cpp:185 #4 0x45cd44c0 in start_thread () from /lib/i686/cmov/libpthread.so.0 #5 0x45c236de in clone () from /lib/i686/cmov/libc.so.6 Thread 1 (Thread 0xb6d28aa0 (LWP 20745)): [KCrash Handler] #6 0x46aafa29 in QPainter::worldMatrixEnabled (this=) at painting/qpainter.cpp:2573 #7 0x46a04e1c in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4735 #8 0x46a042e8 in QWidgetPrivate::drawWidget (this=<value optimized out>, pdev=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4677 #9 0x46a04e1c in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4735 #10 0x46a042e8 in QWidgetPrivate::drawWidget (this=<value optimized out>, pdev=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4677 #11 0x46a04e1c in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4735 #12 0x46a042e8 in QWidgetPrivate::drawWidget (this=<value optimized out>, pdev=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4677 #13 0x46a04e1c in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4735 #14 0x46a042e8 in QWidgetPrivate::drawWidget (this=<value optimized out>, pdev=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4677 #15 0x46a04e1c in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4735 #16 0x46a042e8 in QWidgetPrivate::drawWidget (this=<value optimized out>, pdev=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4677 #17 0x46a04e1c in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4735 #18 0x46a04d22 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4725 #19 0x46a04d22 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4725 #20 0x46a042e8 in QWidgetPrivate::drawWidget (this=<value optimized out>, pdev=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4677 #21 0x46a04e1c in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4735 #22 0x46a04d22 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4725 #23 0x46a04d22 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4725 #24 0x46a042e8 in QWidgetPrivate::drawWidget (this=<value optimized out>, pdev=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4677 #25 0x46a04e1c in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4735 #26 0x46a042e8 in QWidgetPrivate::drawWidget (this=<value optimized out>, pdev=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4677 #27 0x46a04e1c in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4735 #28 0x46a04d22 in QWidgetPrivate::paintSiblingsRecursive (this=<value optimized out>, pdev=<value optimized out>, siblings=<value optimized out>, index=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4725 #29 0x46a042e8 in QWidgetPrivate::drawWidget (this=<value optimized out>, pdev=<value optimized out>, rgn=<value optimized out>, offset=<value optimized out>, flags=<value optimized out>, sharedPainter=<value optimized out>) at kernel/qwidget.cpp:4677 #30 0x46b721ae in QWidgetBackingStore::cleanRegion (this=<value optimized out>, rgn=<value optimized out>, widget=<value optimized out>, recursiveCopyToScreen=<value optimized out>) at painting/qbackingstore.cpp:1035 #31 0x46b72677 in qt_syncBackingStore (widget=<value optimized out>) at painting/qbackingstore.cpp:313 #32 0x46a05ad6 in QWidget::event (this=<value optimized out>, event=<value optimized out>) at kernel/qwidget.cpp:7447 #33 0x46d558c7 in QMainWindow::event (this=<value optimized out>, event=<value optimized out>) at widgets/qmainwindow.cpp:1268 #34 0xb7e2e377 in KMainWindow::event (this=0x9d70ac8, ev=0xa67d638) at ../../kdeui/widgets/kmainwindow.cpp:1093 #35 0xb7e72b2c in KXmlGuiWindow::event (this=0x9d70ac8, ev=0xa67d638) at ../../kdeui/xmlgui/kxmlguiwindow.cpp:131 #36 0x469ade9c in QApplicationPrivate::notify_helper (this=<value optimized out>, receiver=<value optimized out>, e=<value optimized out>) at kernel/qapplication.cpp:3803 #37 0x469b5dea in QApplication::notify (this=<value optimized out>, receiver=<value optimized out>, e=<value optimized out>) at kernel/qapplication.cpp:3768 #38 0xb7d4c77d in KApplication::notify (this=0xbfd15428, receiver=0x9d70ac8, event=0xa67d638) at ../../kdeui/kernel/kapplication.cpp:307 #39 0x4639f771 in QCoreApplication::notifyInternal (this=<value optimized out>, receiver=<value optimized out>, event=<value optimized out>) at kernel/qcoreapplication.cpp:587 #40 0x463a03f5 in QCoreApplicationPrivate::sendPostedEvents (receiver=<value optimized out>, event_type=<value optimized out>, data=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:209 #41 0x463a05ed in QCoreApplication::sendPostedEvents (receiver=) at kernel/qcoreapplication.cpp:1091 #42 0x463ca02f in postEventSourceDispatch (s=) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:214 #43 0x45e6f1b8 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #44 0x45e72853 in ?? () from /usr/lib/libglib-2.0.so.0 #45 0x09b21638 in ?? () #46 0x00000000 in ?? ()
What is your version of the Qt package ? Look at bug 182857 comment 1
Does the distributions know about qt-copy and the patches kde developers do? Please take a look at bug 174065 If debian unestable does not have patch 0256-fix-recursive-backingstore-sync-crash.diff please fill a bug report in debian for them to include it.
Yodel! Just saw it myself: it is indeed #174065 and is fixed in Debian's qt 4.4.3-2 (I still had 4.4.3-1 on my system, I only checked that all KDE packages were current but forgot Qt.) thanks & sorry about the noise. -- vbi