diff --git a/ChangeLog b/ChangeLog index 501b57b70..ea56b998a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2012-08-06 Wolfgang Sourdeau + * OpenChange/MAPIStoreRecurrenceUtils.m (-[iCalRecurrenceRule + fillRecurrencePattern:withEvent:inTimeZone:inMemCtx:]): fixed a + crash occurring when the exception has no recurrence-id and + ignore the specific occurrence. + * OpenChange/MAPIStoreMailVolatileMessage.m (MakeMessageBody): take "attachmentParts" parameter, deduced from the ivar with the corresponding name. diff --git a/OpenChange/MAPIStoreRecurrenceUtils.m b/OpenChange/MAPIStoreRecurrenceUtils.m index d07d640f6..4f36253d5 100644 --- a/OpenChange/MAPIStoreRecurrenceUtils.m +++ b/OpenChange/MAPIStoreRecurrenceUtils.m @@ -293,6 +293,7 @@ else { rp->EndDate = 0x5ae980df; + rp->OccurrenceCount = 0xa; rp->EndType = END_NEVER_END; } } @@ -426,7 +427,10 @@ for (count = 1; count < max; count++) { startDate = [[events objectAtIndex: count] recurrenceId]; - [modifiedDates addObject: startDate]; + if (startDate) + [modifiedDates addObject: startDate]; + else + [self errorWithFormat: @"missing recurrence-id for event %d", count]; } max = [modifiedDates count]; rp->ModifiedInstanceCount = max;