diff options
Diffstat (limited to 'calendar/gui/e-tasks.c')
-rw-r--r-- | calendar/gui/e-tasks.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/calendar/gui/e-tasks.c b/calendar/gui/e-tasks.c index 38035400da..df434a28aa 100644 --- a/calendar/gui/e-tasks.c +++ b/calendar/gui/e-tasks.c @@ -306,16 +306,18 @@ e_tasks_destroy (GtkObject *object) tasks = E_TASKS (object); priv = tasks->priv; - if (priv->client) { - g_object_unref (priv->client); - priv->client = NULL; + if (priv) { + if (priv->client) { + g_object_unref (priv->client); + priv->client = NULL; + } + + g_free (priv); + tasks->priv = NULL; + + all_tasks = g_list_remove (all_tasks, tasks); } - g_free (priv); - tasks->priv = NULL; - - all_tasks = g_list_remove (all_tasks, tasks); - if (GTK_OBJECT_CLASS (parent_class)->destroy) (* GTK_OBJECT_CLASS (parent_class)->destroy) (object); } |