aboutsummaryrefslogtreecommitdiffstats
path: root/shell/e-task-widget.c
diff options
context:
space:
mode:
authorChris Toshok <toshok@ximian.com>2002-11-08 15:14:50 +0800
committerChris Toshok <toshok@src.gnome.org>2002-11-08 15:14:50 +0800
commit94c61bbfadcc832956c77837d2d1524482484715 (patch)
tree3b9c30a63ad6183df96dbcf59c440a5e4e05a8fd /shell/e-task-widget.c
parentef7e69f0f3fd13c783e93d49fe39918d21e52dad (diff)
downloadgsoc2013-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.c13
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);
}