Bug 175517 - Endless loop when deleting a message
Summary: Endless loop when deleting a message
Status: RESOLVED UNMAINTAINED
Alias: None
Product: kmail
Classification: Applications
Component: general (show other bugs)
Version: 1.9.10
Platform: Ubuntu Unspecified
: NOR crash
Target Milestone: ---
Assignee: kdepim bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-11-18 21:46 UTC by Ronny Standtke
Modified: 2012-08-21 07:44 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 Ronny Standtke 2008-11-18 21:46:30 UTC
Version:            (using KDE 3.5.10)
Installed from:    Ubuntu Packages

My inbox contained some messages which I wanted to delete. The messages were threaded like this:

Message 1
  Message 2
  Message 3

I wanted to delete Message 1. I saw the visual strikethrough of the message but suddenly, Kontact did not respond any more and eat up my CPU (100% load). I killed kontact and retried but everytime it crashed. I will keep the messages for reproduceability just in case you want me to debug the situation...

I attached to the looping kontact with gdb and produced the following backtrace:

-----------------------
(gdb) bt full
#0  0xb67d4f55 in QListViewItem::takeItem (this=0x86f1e58, item=0x8c26ec0) at widgets/qlistview.cpp:1327
        lv = (class QListView *) 0x86db7b0
        emit_changed = true
        nextChild = (QListViewItem **) 0x9189a30
#1  0xb67c5fd2 in ~QListViewItem (this=0x8c26ec0) at widgets/qlistview.cpp:1023
No locals.
#2  0xb70477ad in ~KListViewItem (this=0x8c26ec0) at /build/buildd/kdelibs-3.5.10/./kdeui/klistview.cpp:2206
No locals.
#3  0xb4ec7601 in KMail::HeaderItem::~HeaderItem () from /usr/lib/libkmailprivate.so
No symbol table info available.
#4  0xb4eb77a0 in KMHeaders::msgRemoved () from /usr/lib/libkmailprivate.so
No symbol table info available.
#5  0xb4ec2c01 in KMHeaders::qt_invoke () from /usr/lib/libkmailprivate.so
No symbol table info available.
#6  0xb66ce704 in QObject::activate_signal (this=0x85c7878, clist=0x8e7e378, o=0xbf83a460) at kernel/qobject.cpp:2359
        object = (class QObject *) 0x86db7b0
        sol = (QSenderObjectList *) 0x86f0a50
        oldSender = (class QObject *) 0x0
        c = (QConnection *) 0x81a1ee8
#7  0xb4ef4800 in KMFolder::msgRemoved () from /usr/lib/libkmailprivate.so
No symbol table info available.
#8  0xb4ef4f18 in KMFolder::qt_emit () from /usr/lib/libkmailprivate.so
No symbol table info available.
#9  0xb66ce6d8 in QObject::activate_signal (this=0x85c7ab0, clist=0x85ca170, o=0xbf83a550) at kernel/qobject.cpp:2357
        object = (class QObject *) 0x85c7878
        sol = (QSenderObjectList *) 0x85c9a60
        oldSender = (class QObject *) 0x0
        c = (QConnection *) 0x85ca1c8
#10 0xb4f14bc0 in FolderStorage::msgRemoved () from /usr/lib/libkmailprivate.so
No symbol table info available.
#11 0xb4f1683d in FolderStorage::take () from /usr/lib/libkmailprivate.so
No symbol table info available.
#12 0xb4fce85c in KMFolderMaildir::take () from /usr/lib/libkmailprivate.so
No symbol table info available.
#13 0xb4ef2ede in KMFolder::take () from /usr/lib/libkmailprivate.so
No symbol table info available.
#14 0xb4fd17c7 in KMFolderMaildir::addMsgInternal () from /usr/lib/libkmailprivate.so
No symbol table info available.
#15 0xb4fd1eb7 in KMFolderMaildir::addMsg () from /usr/lib/libkmailprivate.so
No symbol table info available.
#16 0xb4f13901 in FolderStorage::moveMsg () from /usr/lib/libkmailprivate.so
No symbol table info available.
#17 0xb4ef3015 in KMFolder::moveMsg () from /usr/lib/libkmailprivate.so
No symbol table info available.
#18 0xb505bdd6 in KMMoveCommand::execute () from /usr/lib/libkmailprivate.so
No symbol table info available.
#19 0xb504ec39 in KMCommand::slotPostTransfer () from /usr/lib/libkmailprivate.so
No symbol table info available.
#20 0xb5059382 in KMCommand::qt_invoke () from /usr/lib/libkmailprivate.so
No symbol table info available.
#21 0xb505969b in KMMenuCommand::qt_invoke () from /usr/lib/libkmailprivate.so
No symbol table info available.
#22 0xb50596fb in KMMoveCommand::qt_invoke () from /usr/lib/libkmailprivate.so
No symbol table info available.
#23 0xb505979b in KMDeleteMsgCommand::qt_invoke () from /usr/lib/libkmailprivate.so
No symbol table info available.
#24 0xb66ce704 in QObject::activate_signal (this=0x8ebc150, clist=0x8da9170, o=0xbf83aa14) at kernel/qobject.cpp:2359
        object = (class QObject *) 0x8ebc150
        sol = (QSenderObjectList *) 0x8ddd520
        oldSender = (class QObject *) 0x8215508
        c = (QConnection *) 0x8cb3da8
---Type <return> to continue, or q <return> to quit---
#25 0xb504d88f in KMCommand::messagesTransfered () from /usr/lib/libkmailprivate.so
No symbol table info available.
#26 0xb505a469 in KMCommand::transferSelectedMsgs () from /usr/lib/libkmailprivate.so
No symbol table info available.
#27 0xb505a627 in KMCommand::slotStart () from /usr/lib/libkmailprivate.so
No symbol table info available.
#28 0xb5059367 in KMCommand::qt_invoke () from /usr/lib/libkmailprivate.so
No symbol table info available.
#29 0xb505969b in KMMenuCommand::qt_invoke () from /usr/lib/libkmailprivate.so
No symbol table info available.
#30 0xb50596fb in KMMoveCommand::qt_invoke () from /usr/lib/libkmailprivate.so
No symbol table info available.
#31 0xb505979b in KMDeleteMsgCommand::qt_invoke () from /usr/lib/libkmailprivate.so
No symbol table info available.
#32 0xb66ce704 in QObject::activate_signal (this=0x8215508, clist=0x8dac1d8, o=0xbf83abc8) at kernel/qobject.cpp:2359
        object = (class QObject *) 0x8ebc150
        sol = (QSenderObjectList *) 0x8ddd520
        oldSender = (class QObject *) 0x0
        c = (QConnection *) 0x87cf348
#33 0xb6a5daba in QSignal::signal (this=0x8215508, t0=@0x8215530) at .moc/debug-shared-mt/moc_qsignal.cpp:100
        clist = (QConnectionList *) 0x8dac1d8
        o = {{type = 0x8076f90, payload = {b = 90, c = 90 'Z', s = 5466, i = -1234102950, l = -1234102950, uc = 90 'Z', us = 5466, ui = 3060864346, ul = 3060864346, f = -3.59242267e-06,
      d = 1.5122679199389347e-314, byte = "Z\025q�\000\000\000\000P\026����\203�", bytearray = {data = 0xb671155a "\201��", size = 0}, ptr = 0xb671155a, voidstar = {ptr = 0xb671155a,
        owner = false}, charstar = {ptr = 0xb671155a "\201��", owner = false}, utf8 = {ptr = 0xb671155a "\201��", owner = false}, local8bit = {ptr = 0xb671155a "\201��", owner = false},
      iface = 0xb671155a, idisp = 0xb671155a}}, {type = 0xb6bb1710, payload = {b = 216, c = -40 '�', s = -3624, i = 148369880, l = 148369880, uc = 216 '�', us = 61912, ui = 148369880,
      ul = 148369880, f = 1.2996699e-33, d = 6.4392918334814052e-314, byte = "���\b\003\000\000\000\000\000\000\000\233be�", bytearray = {data = 0x8d7f1d8 " (!\b�=�\b\r", size = 3},
      ptr = 0x8d7f1d8, voidstar = {ptr = 0x8d7f1d8, owner = 3}, charstar = {ptr = 0x8d7f1d8 " (!\b�=�\b\r", owner = 3}, utf8 = {ptr = 0x8d7f1d8 " (!\b�=�\b\r", owner = 3}, local8bit = {
        ptr = 0x8d7f1d8 " (!\b�=�\b\r", owner = 3}, iface = 0x8d7f1d8, idisp = 0x8d7f1d8}}}
#34 0xb66ed7b2 in QSignal::activate (this=0x8215508) at kernel/qsignal.cpp:215
        me = {priv = 0x9095250}
#35 0xb66f5936 in QSingleShotTimer::event (this=0x82154e0) at kernel/qtimer.cpp:289
No locals.
#36 0xb6662c36 in QApplication::internalNotify (this=0xbf83b1ec, receiver=0x82154e0, e=0xbf83aed8) at kernel/qapplication.cpp:2638
        consumed = false
        handled = false
#37 0xb6664a5f in QApplication::notify (this=0xbf83b1ec, receiver=0x82154e0, e=0xbf83aed8) at kernel/qapplication.cpp:2361
        res = false
#38 0xb6e239b2 in KApplication::notify (this=0xbf83b1ec, receiver=0x82154e0, event=0xbf83aed8) at /build/buildd/kdelibs-3.5.10/./kdecore/kapplication.cpp:550
        t = Timer
        _selectAll = (const KShortcut &) @0xb6ea126c: {m_nSeqs = 1, m_rgseq = {{m_nKeys = 1 '\001', m_bTriggerOnRelease = 0 '\0', m_rgvar = {{m_sym = 97, m_mod = 2}, {m_sym = 0, m_mod = 0}, {
          m_sym = 0, m_mod = 0}, {m_sym = 0, m_mod = 0}}, d = 0x0}, {m_nKeys = 0 '\0', m_bTriggerOnRelease = 0 '\0', m_rgvar = {{m_sym = 0, m_mod = 0}, {m_sym = 0, m_mod = 0}, {m_sym = 0,
          m_mod = 0}, {m_sym = 0, m_mod = 0}}, d = 0x0}}, d = 0x0}
        ic = (class QPixmap *) 0x0
#39 0xb65f328d in QApplication::sendEvent (receiver=0x82154e0, event=0xbf83aed8) at ../include/qapplication.h:523
No locals.
#40 0xb6655b19 in QEventLoop::activateTimers (this=0x80b8c60) at kernel/qeventloop_unix.cpp:559
        e = {<QEvent> = {<Qt> = {static color0 = @0xb6bb1820, static color1 = @0xb6bb1828, static black = @0xb6bb1830, static white = @0xb6bb1838, static darkGray = @0xb6bb1840,
      static gray = @0xb6bb1848, static lightGray = @0xb6bb1850, static red = @0xb6bb1858, static green = @0xb6bb1860, static blue = @0xb6bb1868, static cyan = @0xb6bb1870,
      static magenta = @0xb6bb1878, static yellow = @0xb6bb1880, static darkRed = @0xb6bb1888, static darkGreen = @0xb6bb1890, static darkBlue = @0xb6bb1898, static darkCyan = @0xb6bb18a0,
      static darkMagenta = @0xb6bb18a8, static darkYellow = @0xb6bb18b0, static arrowCursor = @0xb6baff40, static upArrowCursor = @0xb6baff44, static crossCursor = @0xb6baff48,
      static waitCursor = @0xb6baff4c, static ibeamCursor = @0xb6baff50, static sizeVerCursor = @0xb6baff54, static sizeHorCursor = @0xb6baff58, static sizeBDiagCursor = @0xb6baff5c,
      static sizeFDiagCursor = @0xb6baff60, static sizeAllCursor = @0xb6baff64, static blankCursor = @0xb6baff68, static splitVCursor = @0xb6baff6c, static splitHCursor = @0xb6baff70,
      static pointingHandCursor = @0xb6baff74, static forbiddenCursor = @0xb6baff78, static whatsThisCursor = @0xb6baff7c, static busyCursor = @0xb6baff80}, _vptr.QEvent = 0xb6b7bf40,
    t = QEvent::Timer, posted = 0, spont = 0}, id = 493}
        first = false
        currentTime = {tv_sec = 1227040160, tv_usec = 292873}
        n_act = 0
        maxCount = 17
        begin = (TimerInfo *) 0x9121b48
        t = (TimerInfo *) 0x9121b48
#41 0xb660864b in QEventLoop::processEvents (this=0x80b8c60, flags=4) at kernel/qeventloop_x11.cpp:392
---Type <return> to continue, or q <return> to quit---
        event = {type = 2, xany = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, window = 37749297}, xkey = {type = 2, serial = 743205, send_event = 0, display = 0x808d608,
    window = 37749297, root = 422, subwindow = 0, time = 4044509, x = 2830, y = 2427, x_root = 1221, y_root = 910, state = 16, keycode = 107, same_screen = 1}, xbutton = {type = 2,
    serial = 743205, send_event = 0, display = 0x808d608, window = 37749297, root = 422, subwindow = 0, time = 4044509, x = 2830, y = 2427, x_root = 1221, y_root = 910, state = 16,
    button = 107, same_screen = 1}, xmotion = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, window = 37749297, root = 422, subwindow = 0, time = 4044509, x = 2830, y = 2427,
    x_root = 1221, y_root = 910, state = 16, is_hint = 107 'k', same_screen = 1}, xcrossing = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, window = 37749297, root = 422,
    subwindow = 0, time = 4044509, x = 2830, y = 2427, x_root = 1221, y_root = 910, mode = 16, detail = 107, same_screen = 1, focus = 1, state = 16}, xfocus = {type = 2, serial = 743205,
    send_event = 0, display = 0x808d608, window = 37749297, mode = 422, detail = 0}, xexpose = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, window = 37749297, x = 422,
    y = 0, width = 4044509, height = 2830, count = 2427}, xgraphicsexpose = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, drawable = 37749297, x = 422, y = 0,
    width = 4044509, height = 2830, count = 2427, major_code = 1221, minor_code = 910}, xnoexpose = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, drawable = 37749297,
    major_code = 422, minor_code = 0}, xvisibility = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, window = 37749297, state = 422}, xcreatewindow = {type = 2,
    serial = 743205, send_event = 0, display = 0x808d608, parent = 37749297, window = 422, x = 0, y = 4044509, width = 2830, height = 2427, border_width = 1221, override_redirect = 910},
  xdestroywindow = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, event = 37749297, window = 422}, xunmap = {type = 2, serial = 743205, send_event = 0, display = 0x808d608,
    event = 37749297, window = 422, from_configure = 0}, xmap = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, event = 37749297, window = 422, override_redirect = 0},
  xmaprequest = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, parent = 37749297, window = 422}, xreparent = {type = 2, serial = 743205, send_event = 0, display = 0x808d608,
    event = 37749297, window = 422, parent = 0, x = 4044509, y = 2830, override_redirect = 2427}, xconfigure = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, event = 37749297,
    window = 422, x = 0, y = 4044509, width = 2830, height = 2427, border_width = 1221, above = 910, override_redirect = 16}, xgravity = {type = 2, serial = 743205, send_event = 0,
    display = 0x808d608, event = 37749297, window = 422, x = 0, y = 4044509}, xresizerequest = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, window = 37749297, width = 422,
    height = 0}, xconfigurerequest = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, parent = 37749297, window = 422, x = 0, y = 4044509, width = 2830, height = 2427,
    border_width = 1221, above = 910, detail = 16, value_mask = 107}, xcirculate = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, event = 37749297, window = 422, place = 0},
  xcirculaterequest = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, parent = 37749297, window = 422, place = 0}, xproperty = {type = 2, serial = 743205, send_event = 0,
    display = 0x808d608, window = 37749297, atom = 422, time = 0, state = 4044509}, xselectionclear = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, window = 37749297,
    selection = 422, time = 0}, xselectionrequest = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, owner = 37749297, requestor = 422, selection = 0, target = 4044509,
    property = 2830, time = 2427}, xselection = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, requestor = 37749297, selection = 422, target = 0, property = 4044509,
    time = 2830}, xcolormap = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, window = 37749297, colormap = 422, c_new = 0, state = 4044509}, xclient = {type = 2,
    serial = 743205, send_event = 0, display = 0x808d608, window = 37749297, message_type = 422, format = 0, data = {b = "ݶ=\000\016\v\000\000{\t\000\000�\004\000\000\216\003\000", s = {
        -18723, 61, 2830, 0, 2427, 0, 1221, 0, 910, 0}, l = {4044509, 2830, 2427, 1221, 910}}}, xmapping = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, window = 37749297,
    request = 422, first_keycode = 0, count = 4044509}, xerror = {type = 2, display = 0xb5725, resourceid = 0, serial = 134796808, error_code = 49 '1', request_code = 2 '\002',
    minor_code = 64 '@'}, xkeymap = {type = 2, serial = 743205, send_event = 0, display = 0x808d608, window = 37749297,
    key_vector = "�\001\000\000\000\000\000\000ݶ=\000\016\v\000\000{\t\000\000�\004\000\000\216\003\000\000\020\000\000"}, pad = {2, 743205, 0, 134796808, 37749297, 422, 0, 4044509, 2830,
    2427, 1221, 910, 16, 107, 1, 1, 16, 0, 33, 143667448, 143362936, 0, 17, 143363536}}
        nevents = 0
        locker = {mtx = 0x808c650}
        exclude_all = 10
        canWait = true
        tm = (timeval *) 0xb6bb16e0
        highest = 26
        nsel = 1
        zerotm = {tv_sec = 0, tv_usec = 0}
        t = {0xb6aabc66 "Read", 0xb6aabc6b "Write", 0xb6aabc71 "Exception"}
#42 0xb667df90 in QEventLoop::enterLoop (this=0x80b8c60) at kernel/qeventloop.cpp:201
        old_exitloop = false
#43 0xb667dc8e in QEventLoop::exec (this=0x80b8c60) at kernel/qeventloop.cpp:148
No locals.
#44 0xb66647df in QApplication::exec (this=0xbf83b1ec) at kernel/qapplication.cpp:2761
No locals.
#45 0x0805c123 in ?? ()
No symbol table info available.
#46 0xb5e79450 in __libc_start_main () from /lib/tls/i686/cmov/libc.so.6
No symbol table info available.
#47 0x0805b7f1 in ?? ()
No symbol table info available.
Current language:  auto; currently c++
(gdb)
-----------------------

I hope this helps somehow to catch the problem and to fix the bug...
Comment 1 Björn Ruberg 2010-02-02 01:19:18 UTC
Have you experienced this in a later kmail version?
Comment 2 Myriam Schweingruber 2012-08-21 07:44:00 UTC
Closing as there was no feedback. Please feel free to reopen this report if you can reproduce it with Kmail 4.8.5 or later and provide a new backtrace.