diff --git a/ChangeLog b/ChangeLog index ac899446c..68b5a9e7e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2011-06-06 Wolfgang Sourdeau + * OpenChange/MAPIStoreSOGo.m + (sogo_pocop_get_available_table_properties): now takes a + SPropTagArray ** argument. + (sogo_pocop_get_available_properties): same as above. + * OpenChange/MAPIStoreTable.m (-notifyChangesForChild:): same as below. * OpenChange/MAPIStoreContext.m diff --git a/OpenChange/MAPIStoreObject.h b/OpenChange/MAPIStoreObject.h index 19307dd11..fc040ab83 100644 --- a/OpenChange/MAPIStoreObject.h +++ b/OpenChange/MAPIStoreObject.h @@ -49,7 +49,7 @@ + (id) mapiStoreObjectWithSOGoObject: (id) newSOGoObject inContainer: (MAPIStoreObject *) newContainer; -+ (int) getAvailableProperties: (struct SPropTagArray *) properties; ++ (int) getAvailableProperties: (struct SPropTagArray **) properties; - (id) initWithSOGoObject: (id) newSOGoObject inContainer: (MAPIStoreObject *) newFolder; @@ -77,7 +77,7 @@ - (void) resetNewProperties; /* ops */ -- (int) getAvailableProperties: (struct SPropTagArray *) properties; +- (int) getAvailableProperties: (struct SPropTagArray **) properties; - (int) getProperties: (struct mapistore_property_data *) data withTags: (enum MAPITAGS *) tags andCount: (uint16_t) columnCount; diff --git a/OpenChange/MAPIStoreObject.m b/OpenChange/MAPIStoreObject.m index 2cd260d20..f390f6fbb 100644 --- a/OpenChange/MAPIStoreObject.m +++ b/OpenChange/MAPIStoreObject.m @@ -61,13 +61,15 @@ static Class NSExceptionK, MAPIStoreFolderK; return newObject; } -+ (int) getAvailableProperties: (struct SPropTagArray *) properties ++ (int) getAvailableProperties: (struct SPropTagArray **) propertiesP { + struct SPropTagArray *properties; const MAPIStorePropertyGetter *classGetters; NSUInteger count; enum MAPITAGS propTag; uint16_t propValue; + properties = talloc_zero(NULL, struct SPropTagArray); properties->aulPropTag = talloc_array (properties, enum MAPITAGS, MAPIStoreSupportedPropertiesCount); classGetters = MAPIStorePropertyGettersForClass (self); @@ -82,7 +84,9 @@ static Class NSExceptionK, MAPIStoreFolderK; } } - return 0; + *propertiesP = properties; + + return MAPISTORE_SUCCESS; } - (id) init @@ -293,9 +297,9 @@ static Class NSExceptionK, MAPIStoreFolderK; return [self getNo: data]; } -- (int) getAvailableProperties: (struct SPropTagArray *) properties +- (int) getAvailableProperties: (struct SPropTagArray **) propertiesP { - return [isa getAvailableProperties: properties]; + return [isa getAvailableProperties: propertiesP]; } - (int) getProperties: (struct mapistore_property_data *) data diff --git a/OpenChange/MAPIStoreSOGo.m b/OpenChange/MAPIStoreSOGo.m index 733f4014e..827049182 100644 --- a/OpenChange/MAPIStoreSOGo.m +++ b/OpenChange/MAPIStoreSOGo.m @@ -942,7 +942,7 @@ sogo_pocop_open_embedded_message (void *attachment_object, return rc; } -static int sogo_pocop_get_available_table_properties(void *table_object, struct SPropTagArray *properties) +static int sogo_pocop_get_available_table_properties(void *table_object, struct SPropTagArray **propertiesP) { NSAutoreleasePool *pool; MAPIStoreTable *table; @@ -954,7 +954,7 @@ static int sogo_pocop_get_available_table_properties(void *table_object, struct if (table) { pool = [NSAutoreleasePool new]; - rc = [table getAvailableProperties: properties]; + rc = [table getAvailableProperties: propertiesP]; [pool release]; } else @@ -1073,7 +1073,7 @@ sogo_pocop_get_table_row (void *table_object, enum table_query_type query_type, return rc; } -static int sogo_pocop_get_available_properties(void *object, struct SPropTagArray *properties) +static int sogo_pocop_get_available_properties(void *object, struct SPropTagArray **propertiesP) { NSAutoreleasePool *pool; MAPIStoreObject *propObject; @@ -1085,7 +1085,7 @@ static int sogo_pocop_get_available_properties(void *object, struct SPropTagArra if (propObject) { pool = [NSAutoreleasePool new]; - rc = [propObject getAvailableProperties: properties]; + rc = [propObject getAvailableProperties: propertiesP]; [pool release]; } else diff --git a/OpenChange/MAPIStoreTable.h b/OpenChange/MAPIStoreTable.h index 75eb321a7..b6b891677 100644 --- a/OpenChange/MAPIStoreTable.h +++ b/OpenChange/MAPIStoreTable.h @@ -85,7 +85,7 @@ typedef enum { - (void) cleanupCaches; -- (int) getAvailableProperties: (struct SPropTagArray *) properties; +- (int) getAvailableProperties: (struct SPropTagArray **) propertiesP; - (void) setRestrictions: (const struct mapi_SRestriction *) res; - (int) setColumns: (enum MAPITAGS *) newColumns withCount: (uint16_t) newColumCount; diff --git a/OpenChange/MAPIStoreTable.m b/OpenChange/MAPIStoreTable.m index 33871bd8a..7cd0ebc06 100644 --- a/OpenChange/MAPIStoreTable.m +++ b/OpenChange/MAPIStoreTable.m @@ -375,9 +375,9 @@ static Class NSDataK, NSStringK; currentRow = (uint32_t) -1; } -- (int) getAvailableProperties: (struct SPropTagArray *) properties +- (int) getAvailableProperties: (struct SPropTagArray **) propertiesP { - return [[isa childObjectClass] getAvailableProperties: properties]; + return [[isa childObjectClass] getAvailableProperties: propertiesP]; } - (void) setRestrictions: (const struct mapi_SRestriction *) res