Summary: | Crash because uids.size()==1" in file ../../../resources/imap/retrieveitemtask.cpp, line 101 | ||
---|---|---|---|
Product: | [Frameworks and Libraries] Akonadi | Reporter: | RJVB <rjvbertin> |
Component: | IMAP resource | Assignee: | Christian Mollekopf <chrigi_1> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | dvratil, kdepim-bugs, rjvbertin, vkrause |
Priority: | NOR | Keywords: | drkonqi |
Version: | 4.13 | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | New crash information added by DrKonqi |
Description
RJVB
2015-03-09 10:04:00 UTC
Created attachment 99213 [details]
New crash information added by DrKonqi
akonadi_imap_resource (4.13) on KDE Platform 4.14.19 using Qt 4.8.7
- What I was doing when the application crashed:
I opened the Spam folder of a GMail account and selected a message. I think the crash occurred before selecting the message or as an immediate result of that action.
The last output from akonadi and kmail:
akonadi_imap_resource_14(5671) ResourceState::item: Called item() while state holds multiple items!
list is empty
list is empty
There is not valid message
akonadi_imap_resource_14(5671) ResourceState::item: Called item() while state holds multiple items!
akonadi_imap_resource_14(5671) ResourceState::item: Called item() while state holds multiple items!
akonadi_imap_resource_14(5671) ResourceState::item: Called item() while state holds multiple items!
akonadi_imap_resource_14(5671) ResourceState::item: Called item() while state holds multiple items!
ASSERT: "uids.size()==1" in file ../../../resources/imap/retrieveitemtask.cpp, line 101
KCrash: Application 'akonadi_imap_resource' crashing...
KCrash: Attempting to start /usr/lib/kde4/libexec/drkonqi from kdeinit
KCrash: Connect sock_file=/home/bertin/.kde/socket-Patux/kdeinit4__0
-- Backtrace (Reduced):
#6 0x00007f08f8016c49 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#7 0x00007f08f801a058 in __GI_abort () at abort.c:89
[...]
#11 0x00000000004610d1 in RetrieveItemTask::onMessagesReceived (this=0x204f0b0, mailBox=..., uids=..., messages=...) at ../../../resources/imap/retrieveitemtask.cpp:101
[...]
#13 0x00007f08fa76da28 in messagesReceived (this=0x1627, _t1=..., _t2=..., _t3=...) at ./moc_fetchjob.cpp:121
#14 KIMAP::FetchJobPrivate::emitPendings (this=0x2206ee0) at ../../kimap/fetchjob.cpp:60
Is there a patch for this in later versions that I could backport? I fail to see how the "Called item() while state holds multiple items!" warning could possible be produced through RetrieveItemTask. I am not aware of any explicit patch for this issue, I can of course only recommend to try a more recent (supported) version. Looking at the code it seems that most of those Q_ASSERT statements can be replaced with a handler similar to the `if (!ok)` on line 120. The code has changed substantially in KF5 and this should no longer happen. |