[prev in list] [next in list] [prev in thread] [next in thread]
List: kmail-devel
Subject: [Bug 92540] kmail sometimes freezes when deleting messages
From: Richard "Lärkäng" <richard () goteborg ! utfors ! se>
Date: 2005-11-29 18:44:00
Message-ID: 20051129184400.25416.qmail () ktown ! kde ! org
[Download RAW message or body]
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
http://bugs.kde.org/show_bug.cgi?id=92540
------- Additional Comments From richard goteborg utfors se 2005-11-29 \
19:43 ------- This happened again with kdepim 3.5-branch from around rc1.
It got stuck this time too in QListView::itemAbove, where it was stuck in:
while( c && c->siblingItem != this )
c = c->siblingItem;
because c was the same as c->siblingItem.
So I added asserts in qlistview.cpp everywhere where siblingItem was \
assigned to something, to check if there were any assignments of the kind \
item->siblingItem = item
And the assert was triggered when trying to delete the same message again \
with this backtrace:
Using host libthread_db library "/lib/tls/libthread_db.so.1".
`system-supplied DSO at 0xffffe000' has disappeared; keeping its symbols.
[Thread debugging using libthread_db enabled]
[New Thread -1252845856 (LWP 15531)]
[KCrash handler]
#4 0xffffe410 in __kernel_vsyscall ()
#5 0xb5d96391 in raise () from /lib/tls/libc.so.6
#6 0xb5d97dad in abort () from /lib/tls/libc.so.6
#7 0xb5d8fc62 in __assert_fail () from /lib/tls/libc.so.6
#8 0xb6615fe8 in QListViewItem::insertItem (this=0x857a5a8,
newChild=0x85940e0) at qlistview.cpp:1176
#9 0xb661ba30 in QListView::insertItem (this=0x8577de0, i=0x85940e0)
at qlistview.cpp:3203
#10 0xb4dc5117 in KMHeaders::msgRemoved (this=0x8577de0, id=2, msgId=
{static null = {static null = <same as static member of an already \
seen type>, d = 0x8074388, static shared_null = 0x8074388}, d = 0x853d408, \
static shared_null = 0x8074388}) at \
/home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/kmheaders.cpp:1088 #11 \
0xb4dcf20d in KMHeaders::qt_invoke (this=0x8577de0, _id=112, _o=0xbf9cdfb0) \
at kmheaders.moc:301 #12 0xb652ac1f in QObject::activate_signal \
(this=0x853ced8, clist=0x86a2490, o=0xbf9cdfb0) at qobject.cpp:2356
#13 0xb4e01685 in KMFolder::msgRemoved (this=0x853ced8, t0=2, t1=
{static null = {static null = <same as static member of an already \
seen type>, d = 0x8074388, static shared_null = 0x8074388}, d = 0x853d408, \
static shared_null = 0x8074388}) at kmfolder.moc:254 #14 0xb4e02047 in \
KMFolder::qt_emit (this=0x853ced8, _id=9, _o=0xbf9ce0d0) at \
kmfolder.moc:381 #15 0xb652abf3 in QObject::activate_signal \
(this=0x853cfe0, clist=0x853d740, o=0xbf9ce0d0) at qobject.cpp:2354
#16 0xb4e1e745 in FolderStorage::msgRemoved (this=0x853cfe0, t0=2, t1=
{static null = {static null = <same as static member of an already \
seen type>, d = 0x8074388, static shared_null = 0x8074388}, d = 0x853d408, \
static shared_null = 0x8074388}) at folderstorage.moc:320 #17 0xb4e1b283 in \
FolderStorage::take (this=0x853cfe0, idx=2) at \
/home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/folderstorage.cpp:441 #18 \
0xb4ecdd3c in KMFolderMaildir::take (this=0x853cfe0, idx=2) at \
/home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/kmfoldermaildir.cpp:941 \
#19 0xb4dff93e in KMFolder::take (this=0x853ced8, idx=2) at \
/home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/kmfolder.cpp:364 #20 \
0xb4ecb2a9 in KMFolderMaildir::addMsgInternal (this=0x851d040, \
aMsg=0x8627720, index_return=0xbf9ce450, stripUid=false) at \
/home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/kmfoldermaildir.cpp:453 \
#21 0xb4ecab75 in KMFolderMaildir::addMsg (this=0x851d040, aMsg=0x8627720, \
index_return=0xbf9ce450) at \
/home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/kmfoldermaildir.cpp:365 \
#22 0xb4e1baab in FolderStorage::moveMsg (this=0x851d040, aMsg=0x8627720, \
aIndex_ret=0xbf9ce450) at \
/home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/folderstorage.cpp:590 #23 \
0xb4dffb25 in KMFolder::moveMsg (this=0x851cf38, msg=0x8627720, \
index_return=0xbf9ce450) at \
/home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/kmfolder.cpp:409 #24 \
0xb4f4def0 in KMMoveCommand::execute (this=0x87c8970) at \
/home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/kmcommands.cpp:1924 #25 \
0xb4f45468 in KMCommand::slotPostTransfer (this=0x87c8970, \
result=KMCommand::OK) at \
/home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/kmcommands.cpp:254 #26 \
0xb4f555b3 in KMCommand::qt_invoke (this=0x87c8970, _id=5, _o=0xbf9ce620) \
at kmcommands.moc:148 #27 0xb4f5922f in KMMenuCommand::qt_invoke \
(this=0x87c8970, _id=5, _o=0xbf9ce620) at kmcommands.moc:2436
#28 0xb4f59771 in KMMoveCommand::qt_invoke (this=0x87c8970, _id=5,
_o=0xbf9ce620) at kmcommands.moc:2619
#29 0xb4f59967 in KMDeleteMsgCommand::qt_invoke (this=0x87c8970, _id=5,
_o=0xbf9ce620) at kmcommands.moc:2694
#30 0xb652ac1f in QObject::activate_signal (this=0x87c8970, \
clist=0x874a8c8, o=0xbf9ce620) at qobject.cpp:2356
#31 0xb4f553b9 in KMCommand::messagesTransfered (this=0x87c8970,
t0=KMCommand::OK) at kmcommands.moc:126
#32 0xb4f459b3 in KMCommand::transferSelectedMsgs (this=0x87c8970)
at /home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/kmcommands.cpp:349
#33 0xb4f45411 in KMCommand::slotStart (this=0x87c8970)
at /home/richard/kde-svn/svn/trunk/KDE/kdepim/kmail/kmcommands.cpp:246
#34 0xb4f55583 in KMCommand::qt_invoke (this=0x87c8970, _id=4, \
_o=0xbf9ce830) at kmcommands.moc:147
#35 0xb4f5922f in KMMenuCommand::qt_invoke (this=0x87c8970, _id=4,
_o=0xbf9ce830) at kmcommands.moc:2436
#36 0xb4f59771 in KMMoveCommand::qt_invoke (this=0x87c8970, _id=4,
_o=0xbf9ce830) at kmcommands.moc:2619
#37 0xb4f59967 in KMDeleteMsgCommand::qt_invoke (this=0x87c8970, _id=4,
_o=0xbf9ce830) at kmcommands.moc:2694
#38 0xb652ac1f in QObject::activate_signal (this=0x827fbd8, \
clist=0x86c9848, o=0xbf9ce830) at qobject.cpp:2356
#39 0xb6899517 in QSignal::signal (this=0x827fbd8, t0= 0x827fc00)
at moc_qsignal.cpp:100
#40 0xb65489d2 in QSignal::activate (this=0x827fbd8) at qsignal.cpp:212
#41 0xb6550b34 in QSingleShotTimer::event (this=0x827fbb0) at \
qtimer.cpp:286 #42 0xb64c5ae9 in QApplication::internalNotify \
(this=0xbf9ceda0, receiver=0x827fbb0, e=0xbf9ceaf0) at \
qapplication.cpp:2635 #43 0xb64c502a in QApplication::notify \
(this=0xbf9ceda0, receiver=0x827fbb0, e=0xbf9ceaf0) at \
qapplication.cpp:2358 #44 0xb6bccd20 in KApplication::notify \
(this=0xbf9ceda0, receiver=0x827fbb0, event=0xbf9ceaf0)
at /home/richard/kde-svn/svn/trunk/KDE/kdelibs/kdecore/kapplication.cpp:550
#45 0xb7848432 in QApplication::sendEvent (receiver=0x827fbb0,
event=0xbf9ceaf0) at qapplication.h:496
#46 0xb64b3e3c in QEventLoop::activateTimers (this=0x81e6018)
at qeventloop_unix.cpp:556
#47 0xb6469fec in QEventLoop::processEvents (this=0x81e6018, flags=4)
at qeventloop_x11.cpp:389
#48 0xb64dadb3 in QEventLoop::enterLoop (this=0x81e6018) at \
qeventloop.cpp:198 #49 0xb64dacce in QEventLoop::exec (this=0x81e6018) at \
qeventloop.cpp:145 #50 0xb64c5c55 in QApplication::exec (this=0xbf9ceda0) \
at qapplication.cpp:2758 #51 0x0805cb91 in main (argc=1, argv=0xbf9cef74)
at /home/richard/kde-svn/svn/trunk/KDE/kdepim/kontact/src/main.cpp:177
#52 0xb5d82f31 in __libc_start_main () from /lib/tls/libc.so.6
#53 0x0805bfe1 in _start ()
Line 1177 in qlistview.cpp is:
newChild->siblingItem = childItem;
and the assert was triggered because newChild was equal to childItem.
And around line 1088 in kmheaders.cpp is:
1084 if ( parent && parent->item() != item && parent->item() != \
removedItem ) { 1085 parent->item()->insertItem(lvi);
1086 parent->addSortedChild( sci );
1087 } else {
1088 insertItem(lvi);
1089 mRoot->addSortedChild( sci );
1090 }
So as far as I understand it, it tries to add an item to the root of the \
listview when it's already a child of the listview.
Also, looking at the thread I was trying to delete, the message I tried to \
delete was the parent of two messages when using "Thread messages also by \
Subject", but when unchecking subject-threading it was only the parent of \
one of them. _______________________________________________
KMail developers mailing list
KMail-devel@kde.org
https://mail.kde.org/mailman/listinfo/kmail-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic