diff options
author | Rodrigo Moya <rodrigo@ximian.com> | 2003-11-19 19:43:42 +0800 |
---|---|---|
committer | Rodrigo Moya <rodrigo@src.gnome.org> | 2003-11-19 19:43:42 +0800 |
commit | 9b6a235208a55d52a3beef416100b4498f0e174e (patch) | |
tree | 4c12e86bae60f20fdb4ba9ea4c3f0e0d7e994dd4 | |
parent | 9130b26c7b84ea9d96bb9d77f819a4c6fe099eda (diff) | |
download | gsoc2013-evolution-9b6a235208a55d52a3beef416100b4498f0e174e.tar gsoc2013-evolution-9b6a235208a55d52a3beef416100b4498f0e174e.tar.gz gsoc2013-evolution-9b6a235208a55d52a3beef416100b4498f0e174e.tar.bz2 gsoc2013-evolution-9b6a235208a55d52a3beef416100b4498f0e174e.tar.lz gsoc2013-evolution-9b6a235208a55d52a3beef416100b4498f0e174e.tar.xz gsoc2013-evolution-9b6a235208a55d52a3beef416100b4498f0e174e.tar.zst gsoc2013-evolution-9b6a235208a55d52a3beef416100b4498f0e174e.zip |
Fixes #51052
2003-11-19 Rodrigo Moya <rodrigo@ximian.com>
Fixes #51052
* importers/icalendar-importer.c (prepare_events, prepare_tasks):
call icalcompiter_next to move the pointer to the next before
removing a component avoid breaking the link.
svn path=/trunk/; revision=23441
-rw-r--r-- | calendar/ChangeLog | 8 | ||||
-rw-r--r-- | calendar/importers/icalendar-importer.c | 7 |
2 files changed, 15 insertions, 0 deletions
diff --git a/calendar/ChangeLog b/calendar/ChangeLog index 6906c37fac..9eddd98c12 100644 --- a/calendar/ChangeLog +++ b/calendar/ChangeLog @@ -1,3 +1,11 @@ +2003-11-19 Rodrigo Moya <rodrigo@ximian.com> + + Fixes #51052 + + * importers/icalendar-importer.c (prepare_events, prepare_tasks): + call icalcompiter_next to move the pointer to the next before + removing a component avoid breaking the link. + 2003-11-18 JP Rosevear <jpr@ximian.com> * gui/e-cal-model.c (get_dtstart): make sure the timezone value is diff --git a/calendar/importers/icalendar-importer.c b/calendar/importers/icalendar-importer.c index 1eeeb95aef..70906e1578 100644 --- a/calendar/importers/icalendar-importer.c +++ b/calendar/importers/icalendar-importer.c @@ -137,11 +137,15 @@ prepare_events (icalcomponent *icalcomp) if (child_kind != ICAL_VEVENT_COMPONENT && child_kind != ICAL_VTIMEZONE_COMPONENT) { + icalcompiter_next (&iter); + icalcomponent_remove_component (icalcomp, subcomp); if (child_kind == ICAL_VTODO_COMPONENT) vtodos = g_list_prepend (vtodos, subcomp); else icalcomponent_free (subcomp); + + continue; } icalcompiter_next (&iter); @@ -166,8 +170,11 @@ prepare_tasks (icalcomponent *icalcomp, GList *vtodos) icalcomponent_kind child_kind = icalcomponent_isa (subcomp); if (child_kind != ICAL_VTODO_COMPONENT && child_kind != ICAL_VTIMEZONE_COMPONENT) { + icalcompiter_next (&iter); icalcomponent_remove_component (icalcomp, subcomp); icalcomponent_free (subcomp); + + continue; } icalcompiter_next (&iter); |