diff --git a/NEWS b/NEWS index dd7b9244e..f3a779a7f 100644 --- a/NEWS +++ b/NEWS @@ -19,6 +19,7 @@ Bug fixes - [core] increased column size of settings/defaults for MySQL (#4260) - [core] fixed yearly recurrence calculator with until date - [core] generalized HTML sanitization to avoid encoding issues when replying/forwarding mails + - [core] don't restore deleted events in attendees calendars - [web] fixed display of error when the mail editor is in a popup - [web] attachments are not displayed on IOS (#4150) - [web] fixed parsing of pasted email addresses from Spreadsheet (#4258) diff --git a/SoObjects/Appointments/SOGoAppointmentObject.m b/SoObjects/Appointments/SOGoAppointmentObject.m index 985218ec3..504cffcb8 100644 --- a/SoObjects/Appointments/SOGoAppointmentObject.m +++ b/SoObjects/Appointments/SOGoAppointmentObject.m @@ -252,8 +252,9 @@ [iCalendarToSave addChild: [[newEvent copy] autorelease]]; } } - else + else if (![attendeeObject isNew]) { + // Only update the event in attendee's calendar if it was already there iCalendarToSave = [newEvent parent]; } @@ -904,14 +905,14 @@ inRecurrenceExceptionsForEvent: (iCalEvent *) theEvent deletedAttendees = [changes deletedAttendees]; - // We delete the attendees in all exception occurences, if - // the attendees were removed from the master event. - [self _addOrDeleteAttendees: deletedAttendees - inRecurrenceExceptionsForEvent: newEvent - add: NO]; - if ([deletedAttendees count]) { + // We delete the attendees in all exception occurences, if + // the attendees were removed from the master event. + [self _addOrDeleteAttendees: deletedAttendees + inRecurrenceExceptionsForEvent: newEvent + add: NO]; + [self _handleRemovedUsers: deletedAttendees withRecurrenceId: [newEvent recurrenceId]]; if ([self _shouldScheduleEvent: [newEvent organizer]])