diff options
author | Chris Toshok <toshok@ximian.com> | 2002-11-08 15:14:50 +0800 |
---|---|---|
committer | Chris Toshok <toshok@src.gnome.org> | 2002-11-08 15:14:50 +0800 |
commit | 94c61bbfadcc832956c77837d2d1524482484715 (patch) | |
tree | 3b9c30a63ad6183df96dbcf59c440a5e4e05a8fd /shell/e-task-widget.c | |
parent | ef7e69f0f3fd13c783e93d49fe39918d21e52dad (diff) | |
download | gsoc2013-evolution-94c61bbfadcc832956c77837d2d1524482484715.tar.gz gsoc2013-evolution-94c61bbfadcc832956c77837d2d1524482484715.tar.zst gsoc2013-evolution-94c61bbfadcc832956c77837d2d1524482484715.zip |
guard against multiple calls. fixes a crash whenever a task finishes (the
2002-11-07 Chris Toshok <toshok@ximian.com>
* e-task-widget.c (impl_destroy): guard against multiple calls.
fixes a crash whenever a task finishes (the addressbook finishing
loading, etc.).
* e-shell-marshal.list: add NONE:BOOL for
evolution-shell-component.
* evolution-shell-component.c (class_init): register the signals
with g_signal_new.
svn path=/trunk/; revision=18661
Diffstat (limited to 'shell/e-task-widget.c')
-rw-r--r-- | shell/e-task-widget.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/shell/e-task-widget.c b/shell/e-task-widget.c index a6d7e773c6..ce936a5b10 100644 --- a/shell/e-task-widget.c +++ b/shell/e-task-widget.c @@ -62,15 +62,18 @@ impl_destroy (GtkObject *object) ETaskWidgetPrivate *priv; task_widget = E_TASK_WIDGET (object); - priv = task_widget->priv; + if (task_widget->priv) { + priv = task_widget->priv; - g_free (priv->component_id); + g_free (priv->component_id); - g_object_unref (priv->tooltips); + g_object_unref (priv->tooltips); - gdk_pixbuf_unref (priv->icon_pixbuf); + gdk_pixbuf_unref (priv->icon_pixbuf); - g_free (priv); + g_free (priv); + task_widget->priv = NULL; + } (* GTK_OBJECT_CLASS (parent_class)->destroy) (object); } |