diff --git a/src/gcal-window.c b/src/gcal-window.c index 57ad3926..5bc2bbbf 100644 --- a/src/gcal-window.c +++ b/src/gcal-window.c @@ -725,7 +725,7 @@ show_new_event_widget (GcalView *view, { g_clear_pointer (&window->event_creation_data->start_date, g_date_time_unref); g_clear_pointer (&window->event_creation_data->end_date, g_date_time_unref); - g_free (window->event_creation_data); + g_clear_pointer (&window->event_creation_data, g_free); } window->event_creation_data = g_new0 (NewEventData, 1); @@ -1468,6 +1468,13 @@ gcal_window_finalize (GObject *object) g_clear_object (&window->event_to_delete); } + if (window->event_creation_data != NULL) + { + g_clear_pointer (&window->event_creation_data->start_date, g_date_time_unref); + g_clear_pointer (&window->event_creation_data->end_date, g_date_time_unref); + g_clear_pointer (&window->event_creation_data, g_free); + } + g_clear_object (&window->manager); g_clear_object (&window->views_switcher);