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



Hi,
  Have attached the fix for the bug. IF the start and end time are the
same dates then increment the end date by one.

thanks, chenthill.
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/calendar/ChangeLog,v
retrieving revision 1.2892
diff -u -p -r1.2892 ChangeLog
--- ChangeLog	17 Dec 2005 17:20:39 -0000	1.2892
+++ ChangeLog	19 Dec 2005 08:03:09 -0000
@@ -1,3 +1,9 @@
+2005-12-19  Chenthill Palanisamy  <pchenthill novell com>
+
+	Fixes #324195
+	* gui/e-cal-model.c: (e_cal_model_set_instance_times): If the 
+	start and end times are same dates, increment the enddate by one.
+
 2005-12-17  Tor Lillqvist  <tml novell com>
 
 	* conduits/calendar/calendar-conduit.c
Index: gui/e-cal-model.c
===================================================================
RCS file: /cvs/gnome/evolution/calendar/gui/e-cal-model.c,v
retrieving revision 1.67
diff -u -p -r1.67 e-cal-model.c
--- gui/e-cal-model.c	28 Nov 2005 11:42:22 -0000	1.67
+++ gui/e-cal-model.c	19 Dec 2005 08:03:09 -0000
@@ -2108,6 +2108,15 @@ e_cal_model_set_instance_times (ECalMode
 	start_time = icalcomponent_get_dtstart (comp_data->icalcomp);
 	end_time = icalcomponent_get_dtend (comp_data->icalcomp);
 
+	if (start_time.is_date && end_time.is_date && (icaltime_compare_date_only (start_time, end_time) == 0)) {
+		/* If both DTSTART and DTEND are DATE values, and they are the
+		   same day, we add 1 day to DTEND. This means that most
+		   events created with the old Evolution behavior will still
+		   work OK. */
+		icaltime_adjust (&end_time, 1, 0, 0, 0);
+		icalcomponent_set_dtend (comp_data->icalcomp, end_time);
+	}
+
 	comp_data->instance_start = icaltime_as_timet_with_zone (start_time, zone);
 
 	comp_data->instance_end = comp_data->instance_start +


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