Revision 34f1b3e...

Go back to digest for 24th April 2011

Bug Fixes in KDE-PIM

Volker Krause committed changes in [kdepim-runtime] /imap:

Recover from unknown UID after APPEND or COPY.

Currently, if unable to determine the UID of a message after an APPEND or
COPY command, we abort the task and leave the Akonadi item with an empty
RID. During the next sync, the message we added to the server is discovered
and downloaded, duplicating it locally. Items with empty RIDs are protected
against deletion during a sync, since they are assumed to not be on the
server yet. This is a safety feature, but gets in to the way of automatic
recovery here.

So, this patch fixes this by assigning an arbitrary random RID in this
case. Note that this only happens if all UID detection attempts fail, not
if e.g. the actual APPEND or COPY failed. Assuming that those commands
report errors correctly, this should be safe.

REVIEW: 101147

File Changes

Modified 4 files
  • /imap
  •   resources/additemtask.cpp
  •   resources/moveitemtask.cpp
  •   resources/tests/testadditemtask.cpp
  •   resources/tests/testmoveitemtask.cpp
4 files changed in total