Monotone-Parent: 75fbbbf41d95a388a16c3b3e362766a543bffb0f

Monotone-Revision: bc5478c6da74ce0487be5bc0045ffb55f4ff5297

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2011-01-08T04:43:48
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau
2011-01-08 04:43:48 +00:00
parent 37cda64364
commit 84a0a66c45
2 changed files with 23 additions and 0 deletions
+5
View File
@@ -1,5 +1,10 @@
2011-01-07 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* OpenChange/MAPIStoreContext.m (_typeLessTag:): new method
designed to return a known value type for typeless tags that were
requested via getprops. This abstract the missing type from the
call to getChildProperty:...
* OpenChange/MAPIStoreMessageTable.m
(-getChildProperty:forKey:withTag:): added generic values for some
standard props.
+18
View File
@@ -1002,6 +1002,22 @@ _prepareContextClass (struct mapistore_context *newMemCtx,
save: NO];
}
- (enum MAPITAGS) _typeLessTag: (enum MAPITAGS) tag
{
if (tag == 0x300b0000)
tag = PR_SEARCH_KEY;
else if (tag == 0x30070000)
tag = PR_CREATION_TIME;
else if (tag == 0x30080000)
tag = PR_LAST_MODIFICATION_TIME;
else if (tag == 0x0e080000)
tag = PR_MESSAGE_SIZE;
else
[self warnWithFormat: @"unknown typeless tag: 0x%.8x", tag];
return tag;
}
- (int) getProperties: (struct SPropTagArray *) sPropTagArray
ofTableType: (uint8_t) tableType
inRow: (struct SRow *) aRow
@@ -1040,6 +1056,8 @@ _prepareContextClass (struct mapistore_context *newMemCtx,
for (count = 0; count < sPropTagArray->cValues; count++)
{
tag = sPropTagArray->aulPropTag[count];
if ((tag & 0x0000ffff) == 0)
tag = [self _typeLessTag: tag];
propValue = NULL;
propRc = [table getChildProperty: &propValue