Monotone-Parent: 3cb2fca087640ef420f86750a3bd9caf7c365b3b

Monotone-Revision: 551d7c926dcd36700dd7ae6ae2cb2b2c0a8294c5

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2011-09-27T19:25:18
Monotone-Branch: ca.inverse.sogo
maint-2.0.2
Wolfgang Sourdeau 2011-09-27 19:25:18 +00:00
parent 7eb2149ad5
commit bd45d9b0f2
3 changed files with 22 additions and 14 deletions

View File

@ -1,3 +1,17 @@
2011-09-27 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* OpenChange/MAPIStoreSOGo.m (sogo_folder_move_copy_messages):
added the "target_change_keys" parameter.
* OpenChange/MAPIStoreFolder.m
(-moveCopyMessagesWithMID:fromFolder:withMID:wantCopy:): ensure
the message URL exists in the MAPIStoreMapping, otherwise fail
with MAPISTORE_ERR_NOT_FOUND, to avoid a crash. Passe the target
changeKey as property to the new message.
* OpenChange/MAPIStoreFSMessage.m (-objectVersion): return
0xff...fff when "version" does not exist in the object properties.
2011-09-27 Francis Lachapelle <flachapelle@inverse.ca>
* SoObjects/SOGo/SOGoUserDefaults.m (-setBusyOffHours): new setter
@ -13,19 +27,6 @@
(-fetchFreeBusyInfosFrom:to:): add off-hours if defaults
SOGoBusyOffHours is true.
2011-09-27 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* OpenChange/MAPIStoreSOGo.m (sogo_folder_move_copy_messages):
added the "target_change_keys" parameter.
* OpenChange/MAPIStoreFolder.m
(-moveCopyMessagesWithMID:fromFolder:withMID:wantCopy:): ensure
the message URL exists in the MAPIStoreMapping, otherwise fail
with MAPISTORE_ERR_NOT_FOUND, to avoid a crash.
* OpenChange/MAPIStoreFSMessage.m (-objectVersion): return
0xff...fff when "version" does not exist in the object properties.
2011-09-26 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* OpenChange/MAPIStoreFolder.m

View File

@ -124,6 +124,7 @@
andCount: (uint32_t) count
fromFolder: (MAPIStoreFolder *) sourceFolder
withMIDs: (uint64_t *) targetMids
andChangeKeys: (struct Binary_r **) targetChangeKeys
wantCopy: (uint8_t) want_copy;
- (int) getDeletedFMIDs: (struct I8Array_r **) fmidsPtr

View File

@ -599,7 +599,7 @@ Class NSExceptionK, MAPIStoreFAIMessageK, MAPIStoreMessageTableK, MAPIStoreFAIMe
aRow = talloc_zero (memCtx, struct SRow);
aRow->lpProps = talloc_array (aRow, struct SPropValue, 65535);
for (count = 0; count < availableProps->cValues; count++)
{
propTag = availableProps->aulPropTag[count];
@ -616,6 +616,12 @@ Class NSExceptionK, MAPIStoreFAIMessageK, MAPIStoreMessageTableK, MAPIStoreFAIMe
}
}
if (targetChangeKey)
{
set_SPropValue_proptag(&aRow->lpProps[aRow->cValues], PR_CHANGE_KEY, targetChangeKey);
aRow->cValues++;
}
rc = [self createMessage: &destMsg withMID: targetMid
isAssociated: [sourceMsg isKindOfClass: MAPIStoreFAIMessageK]];
if (rc != MAPISTORE_SUCCESS)