diff options
Diffstat (limited to 'calendar/gui/e-cal-model.c')
-rw-r--r-- | calendar/gui/e-cal-model.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/calendar/gui/e-cal-model.c b/calendar/gui/e-cal-model.c index 60dfd5e467..7f7fe2db02 100644 --- a/calendar/gui/e-cal-model.c +++ b/calendar/gui/e-cal-model.c @@ -1518,6 +1518,15 @@ e_cal_view_objects_modified_cb (ECalView *query, GList *objects, gpointer user_d id = e_cal_component_get_id (comp); comp_data = search_by_id_and_client (priv, client, id); + + e_cal_component_free_id (id); + g_object_unref (comp); + + if (!comp_data) { + /* the modified component is not in the model yet, just skip it */ + continue; + } + if (comp_data->icalcomp) icalcomponent_free (comp_data->icalcomp); if (comp_data->dtstart) { |