From ec33c97f36d8332561a1df41cef1ad4fc8357aa2 Mon Sep 17 00:00:00 2001 From: Chenthill Palanisamy Date: Mon, 19 Dec 2005 08:07:47 +0000 Subject: Fixes #324195 svn path=/trunk/; revision=30872 --- calendar/ChangeLog | 6 ++++++ calendar/gui/e-cal-model.c | 9 +++++++++ 2 files changed, 15 insertions(+) (limited to 'calendar') diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 4a0e285045..5770c8914d 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,9 @@ +2005-12-19 Chenthill Palanisamy + + 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 * conduits/calendar/calendar-conduit.c diff --git a/calendar/gui/e-cal-model.c b/calendar/gui/e-cal-model.c index 8c0149cff6..757892d43f 100644 --- a/calendar/gui/e-cal-model.c +++ b/calendar/gui/e-cal-model.c @@ -2108,6 +2108,15 @@ e_cal_model_set_instance_times (ECalModelComponent *comp_data, icaltimezone *zon 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 + -- cgit v1.2.3