Fix for the bug #330674 [exchange calendar]
pchenthill <[email protected]>
| Newsgroups | gmane.comp.gnome.evolution.patches |
|---|---|
| Message-ID | <[email protected]> |
Hi,
Have attached the fix for the bug. Pass the right argument while
notification the clients on object removals.
thanks, Chenthill.
_______________________________________________
Evolution-patches mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/evolution-patches
330674.diff
(text/x-patch, 2.7 KB)
Index: ChangeLog =================================================================== RCS file: /cvs/gnome/evolution-exchange/ChangeLog,v retrieving revision 1.480 diff -u -p -r1.480 ChangeLog --- ChangeLog 6 Mar 2006 15:18:15 -0000 1.480 +++ ChangeLog 9 Mar 2006 14:45:36 -0000 @@ -1,3 +1,10 @@ +2006-03-09 Chenthill Palanisamy <[email protected]> + + Fixes #330674 + * calendar/e-cal-backend-exchange-calendar.c: + (receive_objects): Passed ECalComponentId for notifying + clients on objects removed. + 2006-03-06 Sushma Rai <[email protected]> * calendar/e-cal-backend-exchange-calendar.c Index: calendar/e-cal-backend-exchange-calendar.c =================================================================== RCS file: /cvs/gnome/evolution-exchange/calendar/e-cal-backend-exchange-calendar.c,v retrieving revision 1.53 diff -u -p -r1.53 e-cal-backend-exchange-calendar.c --- calendar/e-cal-backend-exchange-calendar.c 4 Mar 2006 10:17:41 -0000 1.53 +++ calendar/e-cal-backend-exchange-calendar.c 9 Mar 2006 14:45:38 -0000 @@ -673,6 +673,7 @@ check_owner_partstatus_for_declined (ECa email = e_cal_backend_exchange_get_owner_email (backend); icalprop = find_attendee_prop (icalcomp, email); + g_free (email); param = icalproperty_get_first_parameter (icalprop, ICAL_PARTSTAT_PARAMETER); @@ -1522,13 +1523,16 @@ receive_objects (ECalBackendSync *backen d(printf ("uid : %s : found in the cache\n", uid)); if (check_owner_partstatus_for_declined (backend, subcomp)) { + ECalComponentId *id = NULL; status = remove_object (backend, cal, uid, NULL, CALOBJ_MOD_ALL, &old_object, NULL); if (status != GNOME_Evolution_Calendar_Success) goto error; - e_cal_backend_notify_object_removed (E_CAL_BACKEND (backend), uid, + id = e_cal_component_get_id (comp); + e_cal_backend_notify_object_removed (E_CAL_BACKEND (backend), id, old_object, NULL); + e_cal_component_free_id (id); } else { struct icaltimetype time_rid; char *new_object = NULL; @@ -1581,8 +1585,12 @@ receive_objects (ECalBackendSync *backen status = remove_object (backend, cal, uid, rid, CALOBJ_MOD_THIS, &icalobj, &object); else status = remove_object (backend, cal, uid, NULL, CALOBJ_MOD_ALL, &icalobj, &object); - if (status == GNOME_Evolution_Calendar_Success) - e_cal_backend_notify_object_removed (E_CAL_BACKEND (backend), uid, icalobj, NULL); + if (status == GNOME_Evolution_Calendar_Success) { + ECalComponentId *id = e_cal_component_get_id (comp); + e_cal_backend_notify_object_removed (E_CAL_BACKEND (backend), id, icalobj, NULL); + e_cal_component_free_id (id); + + } if (object) { g_free (object); object = NULL;