But that's not true, with the KMMoveCommand in ExpireJob.
So refactored the "run this task now" support (as used by "Expire All Folders")
to still queue things (in case another task is running), but run the next job
immediately after the previous one, when there are pending immediate tasks.
Thanks to Andreas Gungl for his infinite patience and debugging help :)
CCMAIL: 83847-done@bugs.kde.org
svn path=/trunk/kdepim/; revision=331755
call in FolderStorage::correctUnreadMsgsCount() called by KMFolderMaildir::createIndexFromContents()).
-> introduced a base ScheduledJob class and added isOpeningFolder() to it,
which is less fragile than the previous solution.
svn path=/trunk/kdepim/; revision=323036
* When the user requests compaction of a folder from the RMB, always compact
(even if !needsCompaction), and ensure the final statusbar message shows up
(due to kmheaders polluting it, I had to save/restore it in 2 places).
* When compacting outbox after sending mails, don't tell the user.
This made me stumble upon strange code in kmsender.cpp: if count<0, expunge.
Ingo and I agree that this was meant to be if count==0, expunge.
svn path=/trunk/kdepim/; revision=319419
symlink anymore, but in some cases it would fail to follow the link (relative links),
and it could also fail to rename the compacted mailbox (if across filesystems).
Now it works fine :)
CCMAIL: 33071@bugs.kde.org
svn path=/trunk/kdepim/; revision=314782
mbox and maildir folders in the background.
This fixes compaction not happening in kontact at all, and not happening
either for cached imap folders in kmail. It also makes kmail exit faster.
svn path=/trunk/kdepim/; revision=314475