diff --git a/ChangeLog b/ChangeLog index df07e5215..dedb71535 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2012-02-03 Wolfgang Sourdeau + * OpenChange/MAPIStoreFolderTable.m + (-evaluatePropertyRestriction:intoQualifier:): overriden method to + always return true for restrictions on PR_CHANGE_NUM, in order to + help the fxics mechanism. + * OpenChange/MAPIStoreFolder.m (-deleteFolder): cleanup the caches in order to let the folder disappear. diff --git a/OpenChange/MAPIStoreFolderTable.m b/OpenChange/MAPIStoreFolderTable.m index dfcb8af46..1deb68998 100644 --- a/OpenChange/MAPIStoreFolderTable.m +++ b/OpenChange/MAPIStoreFolderTable.m @@ -85,6 +85,26 @@ return restrictedChildKeys; } +- (MAPIRestrictionState) evaluatePropertyRestriction: (struct mapi_SPropertyRestriction *) res + intoQualifier: (EOQualifier **) qualifier +{ + MAPIRestrictionState rc; + + switch ((uint32_t) res->ulPropTag) + { + /* HACK: we cheat here as we current have no mechanism for searching + folders based on PR_CHANGE_NUM, which is used by the oxcfxics + mechanism... */ + case PR_CHANGE_NUM: + rc = MAPIRestrictionStateAlwaysTrue; + break; + default: + rc = [super evaluatePropertyRestriction: res intoQualifier: qualifier]; + } + + return rc; +} + - (id) lookupChild: (NSString *) childKey { return [(MAPIStoreFolder *) container lookupFolder: childKey];