[evolution-patches] fix for the bug #329866 [calendar]



Hi,
   Have attached the patch which fixes the crash. Check if we have a
valid recurrence id before comparing.

thanks, Chenthill.
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution-data-server/calendar/ChangeLog,v
retrieving revision 1.559
diff -u -p -u -p -r1.559 ChangeLog
--- ChangeLog	9 Feb 2006 08:48:14 -0000	1.559
+++ ChangeLog	9 Feb 2006 13:01:08 -0000
@@ -1,3 +1,9 @@
+2006-02-09  Chenthill Palanisamy  <pchenthill novell com>
+
+	Fixes #329866
+	* libecal/e-cal.c: (process_detached_instances): Check if we have
+	valid recurrence id before comparing.
+
 2006-02-09  Rajeev ramanathan <rajeevramanathan_2004 yahoo co in>
 
 	* backends/contacts/e-cal-backend-contacts.c: (contact_record_free)
Index: libecal/e-cal.c
===================================================================
RCS file: /cvs/gnome/evolution-data-server/calendar/libecal/e-cal.c,v
retrieving revision 1.123
diff -u -p -u -p -r1.123 e-cal.c
--- libecal/e-cal.c	12 Jan 2006 09:42:53 -0000	1.123
+++ libecal/e-cal.c	9 Feb 2006 13:01:09 -0000
@@ -3514,7 +3514,12 @@ process_detached_instances (GList *insta
 			e_cal_component_get_uid (ci->comp, &instance_uid);
 			e_cal_component_get_recurid (ci->comp, &instance_recur_id);
 			if (strcmp (uid, instance_uid) == 0) {
-				if (strcmp (e_cal_component_get_recurid_as_string (ci->comp),
+				const char *i_rid = NULL, d_rid = NULL;
+
+				i_rid = e_cal_component_get_recurid_as_string (ci->comp);
+				cid->comp = e_cal_component_get_recurid_as_string (cid->comp);
+
+				if (i_rid && d_rid && strcmp (e_cal_component_get_recurid_as_string (ci->comp),
 					    e_cal_component_get_recurid_as_string (cid->comp)) == 0) {
 					g_object_unref (ci->comp);
 					ci->comp = g_object_ref (cid->comp);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]