Bug 299396 - Segfault in QTreeWidget::setItemSelected called from KMail::FolderView::restoreItemStates
Summary: Segfault in QTreeWidget::setItemSelected called from KMail::FolderView::resto...
Status: RESOLVED FIXED
Alias: None
Product: kmail2
Classification: Applications
Component: UI (show other bugs)
Version: unspecified
Platform: Debian testing Linux
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-05-04 18:42 UTC by Magnus Holmgren
Modified: 2012-05-09 17:20 UTC (History)
1 user (show)

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 Magnus Holmgren 2012-05-04 18:42:04 UTC
Application: kmail (1.13.7)
KDE Platform Version: 4.7.4 (4.7.4)
Qt Version: 4.7.4
Operating System: Linux 3.2.0-2-amd64 x86_64
Distribution: Debian GNU/Linux testing (wheezy)

-- Information about the crash:
I've reinstalled Debian and KDE but reused my old $HOME. Shouldn't crash anyway.
The backtrace says that "this" is optimized out, but when I checked with gdb, it (i.e. the pointer to the parent TreeWidget) was set to 0x200.

The crash can be reproduced every time.

-- Backtrace:
Application: Kmail (kmail), signal: Segmentation fault
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[KCrash Handler]
#6  QTreeWidget::setItemSelected (this=<optimized out>, item=0x2253cc0, select=false) at itemviews/qtreewidget.cpp:3034
#7  0x00007f0ab2c8697d in setSelected (aselect=false, this=0x2253cc0) at /usr/include/qt4/QtGui/qtreewidget.h:397
#8  KMail::FolderView::restoreItemStates (this=0x22fec50) at ../../kmail/folderview.cpp:390
#9  0x00007f0ab2c871fb in KMail::FolderView::reload (this=0x22fec50, openFoldersForUpdate=false) at ../../kmail/folderview.cpp:671
#10 0x00007f0ab2e91f05 in KMMainWidget::readConfig (this=0x35ac350) at ../../kmail/kmmainwidget.cpp:602
#11 0x00007f0ab2e9de8f in KMMainWidget::KMMainWidget (this=0x35ac350, parent=<optimized out>, aGUIClient=0x3694890, actionCollection=<optimized out>, config=...) at ../../kmail/kmmainwidget.cpp:241
#12 0x00007f0ab2c34aaf in KMMainWin::KMMainWin (this=0x3694830, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at ../../kmail/kmmainwin.cpp:41
#13 0x00007f0ab2dd68c7 in KMKernel::openReader (this=0x7fffb19a9b10, onlyCheck=false) at ../../kmail/kmkernel.cpp:422
#14 0x00007f0ab2dd7218 in KMKernel::action (this=0x7fffb19a9b10, mailto=<optimized out>, check=false, to=..., cc=..., bcc=..., subj=..., body=..., messageFile=..., attachURLs=..., customHeaders=...) at ../../kmail/kmkernel.cpp:1939
#15 0x00007f0ab2dd8517 in KMKernel::handleCommandLine (this=0x7fffb19a9b10, noArgsOpensReader=true) at ../../kmail/kmkernel.cpp:368
#16 0x00000000004035ea in KMailApplication::newInstance (this=0x7fffb19a9c80) at ../../kmail/main.cpp:87
#17 0x0000000000402fe3 in delayedInstanceCreation (this=0x7fffb19a9c80) at ../../kmail/main.cpp:94
#18 main (argc=<optimized out>, argv=<optimized out>) at ../../kmail/main.cpp:146

Reported using DrKonqi
Comment 1 Magnus Holmgren 2012-05-04 19:09:21 UTC
The backtraces vary a bit. Here's another. It looks like some memory is corrupted somewhere.

#6  data (this=0x73) at ../../include/QtCore/../../src/corelib/tools/qscopedpointer.h:135
#7  qGetPtrHelper<QScopedPointer<QObjectData> > (p=...) at ../../include/QtCore/../../src/corelib/global/qglobal.h:2343
#8  d_func (this=0x6b) at itemviews/qtreewidget.h:370
#9  QTreeWidget::setItemSelected (this=0x6b, item=0x1bb4c70, select=false) at itemviews/qtreewidget.cpp:3027
#10 0x00007fca81fda97d in setSelected (aselect=false, this=0x1bb4c70) at /usr/include/qt4/QtGui/qtreewidget.h:397
#11 KMail::FolderView::restoreItemStates (this=0x1c8b860) at ../../kmail/folderview.cpp:390
#12 0x00007fca81fdb1fb in KMail::FolderView::reload (this=0x1c8b860, openFoldersForUpdate=false) at ../../kmail/folderview.cpp:671
#13 0x00007fca821e5f05 in KMMainWidget::readConfig (this=0x2e25830) at ../../kmail/kmmainwidget.cpp:602
#14 0x00007fca821f1e8f in KMMainWidget::KMMainWidget (this=0x2e25830, parent=<optimized out>, aGUIClient=0x3a31200, actionCollection=<optimized out>, config=...) at ../../kmail/kmmainwidget.cpp:241
#15 0x00007fca81f88aaf in KMMainWin::KMMainWin (this=0x3a311a0, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at ../../kmail/kmmainwin.cpp:41
#16 0x00007fca8212a8c7 in KMKernel::openReader (this=0x7fffd127df40, onlyCheck=false) at ../../kmail/kmkernel.cpp:422
#17 0x00007fca8212b218 in KMKernel::action (this=0x7fffd127df40, mailto=<optimized out>, check=false, to=..., cc=..., bcc=..., subj=..., body=..., messageFile=..., attachURLs=..., customHeaders=...) at ../../kmail/kmkernel.cpp:1939
#18 0x00007fca8212c517 in KMKernel::handleCommandLine (this=0x7fffd127df40, noArgsOpensReader=true) at ../../kmail/kmkernel.cpp:368
#19 0x00000000004035ea in KMailApplication::newInstance (this=0x7fffd127e0b0) at ../../kmail/main.cpp:87
#20 0x0000000000402fe3 in delayedInstanceCreation (this=0x7fffd127e0b0) at ../../kmail/main.cpp:94
#21 main (argc=<optimized out>, argv=<optimized out>) at ../../kmail/main.cpp:146
Comment 2 Magnus Holmgren 2012-05-04 19:48:52 UTC
More information: The crash occurs after I input the password for a GMail account, which for some reason never appears to be saved. By removing that account and re-adding it I could stop KMail from crashing. Here's another backtrace.

#6  QAbstractItemView::scheduleDelayedItemsLayout (this=0xa1) at itemviews/qabstractitemview.cpp:3535
#7  0x00007f7de5f4aa4b in KMail::FolderView::qt_metacall (this=0x204d260, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff03b22500) at ./folderview.moc:234
#8  0x00007f7de5f4e8b0 in KMail::MainFolderView::qt_metacall (this=0x204d260, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff03b22500) at ./mainfolderview.moc:70
#9  0x00007f7de4e2a4ba in QMetaObject::activate (sender=0x204d260, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff03b22500) at kernel/qobject.cpp:3278
#10 0x00007f7de5894202 in QTreeWidget::itemExpanded (this=<optimized out>, _t1=0x1f6bb20) at .moc/release-shared/moc_qtreewidget.cpp:242
#11 0x00007f7de589b933 in QTreeWidget::qt_metacall (this=0x204d260, _c=QMetaObject::InvokeMetaMethod, _id=21, _a=0x7fff03b226c0) at .moc/release-shared/moc_qtreewidget.cpp:155
#12 0x00007f7dde3659c0 in KPIM::TreeWidget::qt_metacall (this=0x204d260, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff03b226c0) at moc_treewidget.cpp:74
#13 0x00007f7dde3d69d0 in KPIM::FolderTreeWidget::qt_metacall (this=0x204d260, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff03b226c0) at ./foldertreewidget.moc:74
#14 0x00007f7de5f4a9e0 in KMail::FolderView::qt_metacall (this=0x204d260, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff03b226c0) at ./folderview.moc:200
#15 0x00007f7de5f4e8b0 in KMail::MainFolderView::qt_metacall (this=0x204d260, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff03b226c0) at ./mainfolderview.moc:70
#16 0x00007f7de4e2a4ba in QMetaObject::activate (sender=0x204d260, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff03b226c0) at kernel/qobject.cpp:3278
#17 0x00007f7de585bb02 in QTreeView::expanded (this=<optimized out>, _t1=...) at .moc/release-shared/moc_qtreeview.cpp:201
#18 0x00007f7de58683d9 in QTreeView::expand (this=0x204d260, index=...) at itemviews/qtreeview.cpp:752
#19 0x00007f7de58955ad in QTreeWidget::setItemExpanded (this=<optimized out>, item=0x1f6bb20, expand=true) at itemviews/qtreewidget.cpp:3143
#20 0x00007f7de5f4882a in setExpanded (aexpand=true, this=0x1f6bb20) at /usr/include/qt4/QtGui/qtreewidget.h:409
#21 KMail::FolderView::restoreItemStates (this=0x204d260) at ../../kmail/folderview.cpp:389
#22 0x00007f7de5f491fb in KMail::FolderView::reload (this=0x204d260, openFoldersForUpdate=false) at ../../kmail/folderview.cpp:671
#23 0x00007f7de6153f05 in KMMainWidget::readConfig (this=0x32e3e90) at ../../kmail/kmmainwidget.cpp:602
#24 0x00007f7de615fe8f in KMMainWidget::KMMainWidget (this=0x32e3e90, parent=<optimized out>, aGUIClient=0x32c8640, actionCollection=<optimized out>, config=...) at ../../kmail/kmmainwidget.cpp:241
#25 0x00007f7de5ef6aaf in KMMainWin::KMMainWin (this=0x32c85e0, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at ../../kmail/kmmainwin.cpp:41
#26 0x00007f7de60988c7 in KMKernel::openReader (this=0x7fff03b232d0, onlyCheck=false) at ../../kmail/kmkernel.cpp:422
#27 0x00007f7de6099218 in KMKernel::action (this=0x7fff03b232d0, mailto=<optimized out>, check=false, to=..., cc=..., bcc=..., subj=..., body=..., messageFile=..., attachURLs=..., customHeaders=...) at ../../kmail/kmkernel.cpp:1939
#28 0x00007f7de609a517 in KMKernel::handleCommandLine (this=0x7fff03b232d0, noArgsOpensReader=true) at ../../kmail/kmkernel.cpp:368
#29 0x00000000004035ea in KMailApplication::newInstance (this=0x7fff03b23440) at ../../kmail/main.cpp:87
#30 0x0000000000402fe3 in delayedInstanceCreation (this=0x7fff03b23440) at ../../kmail/main.cpp:94
#31 main (argc=<optimized out>, argv=<optimized out>) at ../../kmail/main.cpp:146
Comment 3 Laurent Montel 2012-05-09 17:20:19 UTC
4.7.4 is too old.
I fixed a lot of bug.
Please upgrade