diff --git a/ChangeLog b/ChangeLog index 05342f5f0..dab7cf589 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,7 @@ 2011-09-30 Wolfgang Sourdeau + * OpenChange/NSData+MAPIStore.m (-appendUInt16): new method. + * OpenChange/EOQualifier+MAPIFS.m (-[EOKeyValueQUalifier _evaluateMAPIFSMessageProperties:): ensure finalKey is never nil nor undefined. diff --git a/OpenChange/NSData+MAPIStore.h b/OpenChange/NSData+MAPIStore.h index 93d97c38c..fd56f0389 100644 --- a/OpenChange/NSData+MAPIStore.h +++ b/OpenChange/NSData+MAPIStore.h @@ -47,6 +47,7 @@ @interface NSMutableData (MAPIStoreDataTypes) - (void) appendUInt8: (uint8_t) value; +- (void) appendUInt16: (uint16_t) value; - (void) appendUInt32: (uint32_t) value; @end diff --git a/OpenChange/NSData+MAPIStore.m b/OpenChange/NSData+MAPIStore.m index 1b75adfce..f998ef27d 100644 --- a/OpenChange/NSData+MAPIStore.m +++ b/OpenChange/NSData+MAPIStore.m @@ -176,6 +176,20 @@ static void _fillFlatUIDWithGUID (struct FlatUID_r *flatUID, const struct GUID * [self appendBytes: (char *) &value length: 1]; } +- (void) appendUInt16: (uint16_t) value +{ + NSUInteger count; + char bytes[2]; + + for (count = 0; count < 2; count++) + { + bytes[count] = value & 0xff; + value >>= 8; + } + + [self appendBytes: bytes length: 2]; +} + - (void) appendUInt32: (uint32_t) value { NSUInteger count;