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;
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.