diff options
author | Milan Crha <mcrha@src.gnome.org> | 2007-10-01 15:44:05 +0800 |
---|---|---|
committer | Milan Crha <mcrha@src.gnome.org> | 2007-10-01 15:44:05 +0800 |
commit | 67250759b59c1cfd3e9ffdedf62b3fcc9408c211 (patch) | |
tree | 552f0a16a1f410bdf61cf11ed1f1dc6373ffe557 /calendar | |
parent | 203034b3f4c0869197c2195c87e14675e6db5f69 (diff) | |
download | gsoc2013-evolution-67250759b59c1cfd3e9ffdedf62b3fcc9408c211.tar.gz gsoc2013-evolution-67250759b59c1cfd3e9ffdedf62b3fcc9408c211.tar.zst gsoc2013-evolution-67250759b59c1cfd3e9ffdedf62b3fcc9408c211.zip |
2007-10-01 mcrha Fix for bug #428402
svn path=/trunk/; revision=34341
Diffstat (limited to 'calendar')
-rw-r--r-- | calendar/ChangeLog | 12 | ||||
-rw-r--r-- | calendar/gui/e-itip-control.c | 6 | ||||
-rw-r--r-- | calendar/importers/icalendar-importer.c | 8 |
3 files changed, 20 insertions, 6 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index ca17af6e3c..44954fc8e0 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,5 +1,17 @@ 2007-10-01 Milan Crha <mcrha@redhat.com> + ** Fix for bug #428402 + + * gui/e-itip-control.c: (show_current): First move to next component, + then remove last alarm and then free that last component. + + * gui/e-itip-control.c: (update_item): Free component when done. + + * importers/icalendar-importer.c: (prepare_events), (prepare_tasks): + Really go through every component when removing one. + +2007-10-01 Milan Crha <mcrha@redhat.com> + ** Fix for bug #342283 * gui/calendar-commands.h: (calendar_command_print): New function. diff --git a/calendar/gui/e-itip-control.c b/calendar/gui/e-itip-control.c index 55814fd45d..8e408604fb 100644 --- a/calendar/gui/e-itip-control.c +++ b/calendar/gui/e-itip-control.c @@ -1567,9 +1567,10 @@ show_current (EItipControl *itip) /* Strip out alarms for security purposes */ alarm_iter = icalcomponent_begin_component (priv->ical_comp, ICAL_VALARM_COMPONENT); while ((alarm_comp = icalcompiter_deref (&alarm_iter)) != NULL) { - icalcomponent_remove_component (priv->ical_comp, alarm_comp); - icalcompiter_next (&alarm_iter); + + icalcomponent_remove_component (priv->ical_comp, alarm_comp); + icalcomponent_free (alarm_comp); } priv->comp = e_cal_component_new (); @@ -1946,6 +1947,7 @@ update_item (EItipControl *itip) gtk_widget_destroy (dialog); icalcomponent_remove_component (priv->top_level, clone); + icalcomponent_free (clone); } static void diff --git a/calendar/importers/icalendar-importer.c b/calendar/importers/icalendar-importer.c index 4fd4d9e447..cbdbb70ded 100644 --- a/calendar/importers/icalendar-importer.c +++ b/calendar/importers/icalendar-importer.c @@ -119,9 +119,9 @@ prepare_events (icalcomponent *icalcomp, GList **vtodos) *vtodos = g_list_prepend (*vtodos, subcomp); else icalcomponent_free (subcomp); + } else { + icalcompiter_next (&iter); } - - icalcompiter_next (&iter); } } @@ -143,9 +143,9 @@ prepare_tasks (icalcomponent *icalcomp, GList *vtodos) icalcompiter_next (&iter); icalcomponent_remove_component (icalcomp, subcomp); icalcomponent_free (subcomp); + } else { + icalcompiter_next (&iter); } - - icalcompiter_next (&iter); } for (elem = vtodos; elem; elem = elem->next) { |