[evolution-patches] patch for bug #71480 [calendar]



Hi,
   Have attached the patch for the bug.

thanks, chenthill.
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/calendar/ChangeLog,v
retrieving revision 1.2662
diff -u -p -r1.2662 ChangeLog
--- ChangeLog	8 Feb 2005 13:16:25 -0000	1.2662
+++ ChangeLog	9 Feb 2005 10:13:26 -0000
@@ -1,3 +1,9 @@
+2005-02-09  Chenthill Palanisamy  <pchenthill novell com>
+
+	* gui/e-cal-model.c: (e_cal_view_objects_added_cb): Remove
+	the component from the view, if its already present before 
+	adding it.
+
 2005-02-08  Rodrigo Moya <rodrigo novell com>
 
 	* gui/e-cal-model.c (set_instance_times): set instance times correctly.
Index: gui/e-cal-model.c
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/e-cal-model.c,v
retrieving revision 1.54
diff -u -p -r1.54 e-cal-model.c
--- gui/e-cal-model.c	8 Feb 2005 13:16:26 -0000	1.54
+++ gui/e-cal-model.c	9 Feb 2005 10:13:29 -0000
@@ -1322,6 +1322,20 @@ e_cal_view_objects_added_cb (ECalView *q
 	priv = model->priv;
 
 	for (l = objects; l; l = l->next) {
+		ECalModelComponent *comp_data;
+
+		/* remove all recurrences and re-add them after generating them */
+		while ((comp_data = search_by_uid_and_client (priv, e_cal_view_get_client (query),
+							      icalcomponent_get_uid (l->data)))) {
+			int pos;
+
+			pos = get_position_in_array (priv->objects, comp_data);
+			e_table_model_row_deleted (E_TABLE_MODEL (model), pos);
+
+			g_ptr_array_remove (priv->objects, comp_data);
+			e_cal_model_free_component_data (comp_data);
+		}
+
 		if ((priv->flags & E_CAL_MODEL_FLAGS_EXPAND_RECURRENCES)) {
 			RecurrenceExpansionData rdata;
 
@@ -1334,8 +1348,6 @@ e_cal_view_objects_added_cb (ECalView *q
 							     (ECalRecurInstanceFn) add_instance_cb,
 							     &rdata);
 		} else {
-			ECalModelComponent *comp_data;
-
 			e_table_model_pre_change (E_TABLE_MODEL (model));
 
 			comp_data = g_new0 (ECalModelComponent, 1);


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