diff options
-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 | ||||
-rw-r--r-- | plugins/import-ics-attachments/ChangeLog | 5 | ||||
-rw-r--r-- | plugins/import-ics-attachments/icsimporter.c | 8 | ||||
-rw-r--r-- | plugins/itip-formatter/ChangeLog | 7 | ||||
-rw-r--r-- | plugins/itip-formatter/itip-formatter.c | 5 |
7 files changed, 39 insertions, 12 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) { diff --git a/plugins/import-ics-attachments/ChangeLog b/plugins/import-ics-attachments/ChangeLog index 1fbdcec73a..c772527ba8 100644 --- a/plugins/import-ics-attachments/ChangeLog +++ b/plugins/import-ics-attachments/ChangeLog @@ -1,3 +1,8 @@ +2007-10-01 Milan Crha <mcrha@redhat.com> + + * icsimporter.c: (prepare_events), (prepare_tasks): + Really go through every component when removing one. + 2007-06-03 Srinivasa Ragavan <sragavan@novell.com> ** Fix for version removal from Installed files from Gilles Dartiguelongue diff --git a/plugins/import-ics-attachments/icsimporter.c b/plugins/import-ics-attachments/icsimporter.c index a99dabfee8..802fe9dee5 100644 --- a/plugins/import-ics-attachments/icsimporter.c +++ b/plugins/import-ics-attachments/icsimporter.c @@ -321,9 +321,9 @@ prepare_events (icalcomponent *icalcomp, GList **vtodos) *vtodos = g_list_prepend (*vtodos, subcomp); else icalcomponent_free (subcomp); + } else { + icalcompiter_next (&iter); } - - icalcompiter_next (&iter); } } @@ -345,9 +345,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) { diff --git a/plugins/itip-formatter/ChangeLog b/plugins/itip-formatter/ChangeLog index 11fe3e1235..7f8cd6037b 100644 --- a/plugins/itip-formatter/ChangeLog +++ b/plugins/itip-formatter/ChangeLog @@ -1,3 +1,10 @@ +2007-10-01 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #428402 + + * itip-formatter.c: (extract_itip_data): First move to next component, then + remove last alarm and then free that last component. + 2007-09-07 Chenthill Palanisamy <pchenthill@novell.com> Fixes #273417 diff --git a/plugins/itip-formatter/itip-formatter.c b/plugins/itip-formatter/itip-formatter.c index 79c19e4dc3..fce7153f0c 100644 --- a/plugins/itip-formatter/itip-formatter.c +++ b/plugins/itip-formatter/itip-formatter.c @@ -1481,9 +1481,10 @@ extract_itip_data (FormatItipPObject *pitip, GtkContainer *container) /* Strip out alarms for security purposes */ alarm_iter = icalcomponent_begin_component (pitip->ical_comp, ICAL_VALARM_COMPONENT); while ((alarm_comp = icalcompiter_deref (&alarm_iter)) != NULL) { - icalcomponent_remove_component (pitip->ical_comp, alarm_comp); - icalcompiter_next (&alarm_iter); + + icalcomponent_remove_component (pitip->ical_comp, alarm_comp); + icalcomponent_free (alarm_comp); } } |