Monotone-Parent: 14df382f39f38461d724751dad6ea4e1e8ee57c7

Monotone-Revision: f192e1f1ce3ef4fc536470409d175d3bc7cb4bad

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2012-03-12T05:56:32
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Wolfgang Sourdeau 2012-03-12 05:56:32 +00:00
parent d4b80cbc6a
commit 1e51850d6e
2 changed files with 15 additions and 2 deletions

View File

@ -1,5 +1,10 @@
2012-03-12 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* OpenChange/MAPIStoreGCSMessage.m
(-getPidTagPredecessorChangeList:inMemCtx:): when the list is
missing, request a synchronisation from the container as the
message might now have been synchronised yet...
* OpenChange/MAPIStoreTypes.m (MAPICNCompare): new function that
returns an NSComparisonResult for two change numbers (reverse
format).

View File

@ -150,13 +150,21 @@
{
int rc = MAPISTORE_SUCCESS;
NSData *changeList;
MAPIStoreGCSFolder *parentFolder;
if (isNew)
rc = MAPISTORE_ERR_NOT_FOUND;
else
{
changeList = [(MAPIStoreGCSFolder *)[self container]
predecessorChangeListForMessageWithKey: [self nameInContainer]];
parentFolder = (MAPIStoreGCSFolder *)[self container];
changeList = [parentFolder
predecessorChangeListForMessageWithKey: [self nameInContainer]];
if (!changeList)
{
[parentFolder synchroniseCache];
changeList = [parentFolder
predecessorChangeListForMessageWithKey: [self nameInContainer]];
}
if (!changeList)
abort ();
*data = [changeList asBinaryInMemCtx: memCtx];