aboutsummaryrefslogtreecommitdiffstats
path: root/calendar/gui/e-week-view.c
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2008-01-25 22:10:07 +0800
committerMilan Crha <mcrha@src.gnome.org>2008-01-25 22:10:07 +0800
commit34da45d5d6f03a24f32edf8a41a783ad489f9296 (patch)
treee8c479e2cd57bc82eae49205ef9accb0d953a479 /calendar/gui/e-week-view.c
parentc4046c56365033ebc17c21f4bda6411ffe5bf1fc (diff)
downloadgsoc2013-evolution-34da45d5d6f03a24f32edf8a41a783ad489f9296.tar
gsoc2013-evolution-34da45d5d6f03a24f32edf8a41a783ad489f9296.tar.gz
gsoc2013-evolution-34da45d5d6f03a24f32edf8a41a783ad489f9296.tar.bz2
gsoc2013-evolution-34da45d5d6f03a24f32edf8a41a783ad489f9296.tar.lz
gsoc2013-evolution-34da45d5d6f03a24f32edf8a41a783ad489f9296.tar.xz
gsoc2013-evolution-34da45d5d6f03a24f32edf8a41a783ad489f9296.tar.zst
gsoc2013-evolution-34da45d5d6f03a24f32edf8a41a783ad489f9296.zip
** Fix for bug #475781
2008-01-25 Milan Crha <mcrha@redhat.com> ** Fix for bug #475781 * plugins/save-calendar/csv-format.c: (do_save_calendar_csv): * plugins/save-calendar/rdf-format.c: (do_save_calendar_rdf): * plugins/itip-formatter/itip-formatter.c: (format_itip_object): * calendar/gui/dialogs/recurrence-page.c: (fill_ending_date), (recurrence_page_fill_widgets): * calendar/gui/dialogs/memo-page.c: (memo_page_fill_widgets): * calendar/gui/e-day-view.c: 2*(e_day_view_finish_long_event_resize), 2*(e_day_view_on_editing_stopped): * calendar/gui/itip-utils.c: (comp_compliant), (reply_to_calendar_comp): * calendar/gui/e-week-view.c: (e_week_view_on_editing_stopped): * calendar/gui/e-calendar-view.c: (e_calendar_view_add_event), (e_calendar_view_get_tooltips): * calendar/gui/e-cal-component-preview.c: (write_html): * calendar/gui/e-cal-component-memo-preview.c: (write_html): * calendar/gui/e-cal-model.c: (add_instance_cb): Fix memory leaks around ECalComponentDateTime. svn path=/trunk/; revision=34895
Diffstat (limited to 'calendar/gui/e-week-view.c')
-rw-r--r--calendar/gui/e-week-view.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/calendar/gui/e-week-view.c b/calendar/gui/e-week-view.c
index f638fb9a91..cca54b0d22 100644
--- a/calendar/gui/e-week-view.c
+++ b/calendar/gui/e-week-view.c
@@ -3532,20 +3532,27 @@ e_week_view_on_editing_stopped (EWeekView *week_view,
if (mod == CALOBJ_MOD_THIS) {
ECalComponentDateTime dt;
+ struct icaltimetype tt;
+ char *tzid;
e_cal_component_get_dtstart (comp, &dt);
if (dt.value->zone) {
- *dt.value = icaltime_from_timet_with_zone (
+ tt = icaltime_from_timet_with_zone (
event->comp_data->instance_start,
dt.value->is_date,
dt.value->zone);
} else {
- *dt.value = icaltime_from_timet_with_zone (
+ tt = icaltime_from_timet_with_zone (
event->comp_data->instance_start,
dt.value->is_date,
e_calendar_view_get_timezone (E_CALENDAR_VIEW (week_view)));
}
+ tzid = g_strdup (dt.tzid);
+ e_cal_component_free_datetime (&dt);
+ dt.value = &tt;
+ dt.tzid = tzid;
e_cal_component_set_dtstart (comp, &dt);
+ g_free (tzid);
e_cal_component_get_dtend (comp, &dt);
if (dt.value->zone) {
@@ -3559,7 +3566,12 @@ e_week_view_on_editing_stopped (EWeekView *week_view,
dt.value->is_date,
e_calendar_view_get_timezone (E_CALENDAR_VIEW (week_view)));
}
+ tzid = g_strdup (dt.tzid);
+ e_cal_component_free_datetime (&dt);
+ dt.value = &tt;
+ dt.tzid = tzid;
e_cal_component_set_dtend (comp, &dt);
+ g_free (tzid);
e_cal_component_set_rdate_list (comp, NULL);
e_cal_component_set_rrule_list (comp, NULL);