Summary: | Multifolder selection ('select') hangs when selecting server folders after pressing 'done' | ||
---|---|---|---|
Product: | [Unmaintained] KDE PIM Mobile | Reporter: | Bernhard E. Reiter <bernhard> |
Component: | general | Assignee: | kdepim bugs <kdepim-bugs> |
Status: | CLOSED FIXED | ||
Severity: | critical | CC: | amantia, bjoern.ricks, felix.wolfsteller |
Priority: | VHI | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Maemo 5 | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Bernhard E. Reiter
2010-09-15 09:15:05 UTC
The multifolder selection is quite important for the calender view to be useful. I also encountered this on the 20100903 experimental tag version. I am able to reproduce this bug with email folders it did work in korg for me SVN commit 1175718 by skelly: Don't create a QItemSelection with duplicate ranges. The 'source' selection model might have a selection which includes a particular index and its parent. We need to be careful to not include the overlap twice in the result. BUG: 251274 M +9 -0 kbreadcrumbselectionmodel.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=1175718 SVN commit 1175719 by skelly: Don't create a QItemSelection with duplicate ranges. The 'source' selection model might have a selection which includes a particular index and its parent. We need to be careful to not include the overlap twice in the result. CCBUG: 251274 M +9 -0 kbreadcrumbselectionmodel.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=1175719 I forgot to update before checking the br, so I debugged into it and came up with this patch: Index: itemviews/kselectionproxymodel.cpp =================================================================== --- itemviews/kselectionproxymodel.cpp (revision 1175646) +++ itemviews/kselectionproxymodel.cpp (working copy) @@ -191,7 +191,7 @@ const QModelIndex nextSibling = ansList.value(bestParentRow + 1); if (!nextSibling.isValid()) { - continue; + break; } if (youngestAncestor.row() <= nextSibling.row()) { The reasoning of the change is that if nextParent == commonParent at the beginning and nextSibling is not valid, the loop will never end. Still reproduceable with kmail-mobile version 4:4.5~20100917.1176264-1maemo1.1174921 . Did not try with organizer. I can confirm the issue is still there with Kontact Mobil "Mail" on Package: kdepim-mobile Version: 4:4.5~20100917.1176295-1maemo1.1174921 Package: libqt4-experimental-gui Version: 4.7.0~git20100908-0maemo1 It seems like a "busy wait" as kmail-mobile seems to be eating CPU. Gone in version 4:4.5~20100920.1177273-1maemo1.1174921 (kmail-mobile). Seems to me a problem only if two or more imap folders are selected but nevertheless it still occurs with 4:4.5~20100917.1176295-1maemo1.1174921. Are there any patches for this issue not included in latest tag? (In reply to comment #9) > Seems to me a problem only if two or more imap folders are selected but Only noticed now as well, but the original reporter was pretty precise in the bugs title: "... hangs when selecting _server_ folders ..." :) > nevertheless it still occurs with 4:4.5~20100917.1176295-1maemo1.1174921. Are > there any patches for this issue not included in latest tag? Reverting my comment #8 . Persists in version 4:4.5~20100920.1177660-1maemo1.1177547 . When only selecting __non-local__ folders, pressing "Done" leads to a hanging application. To stress two point that have been in my original report, but not explicitely stressed: Reproducable with _two_ _imap_ folders from _one level_. Please retest with revision >= 1180700, Steve's fixes were not merged into the kdelibs komo branch, which explains why they didn't show any effect. Confirmed, works as expected in 4:4.5~20101001.1181430-1maemo1.1181463 . |