commit 0cb63c2aecbfb99e091fb4ebf07d85a56266110c Author: Will Thompson <will.thompson@collabora.co.uk> Date: Sat Jun 6 13:18:35 2009 +0100 Make tp_channel_dispose idempotent diff --git a/telepathy-glib/channel.c b/telepathy-glib/channel.c index 82224ed..e9750b3 100644 --- a/telepathy-glib/channel.c +++ b/telepathy-glib/channel.c @@ -1020,6 +1020,9 @@ tp_channel_dispose (GObject *object) DEBUG ("%p", self); + if (self->priv->connection == NULL) + goto finally; + if (self->priv->conn_invalidated_id != 0) g_signal_handler_disconnect (self->priv->connection, self->priv->conn_invalidated_id); @@ -1029,6 +1032,7 @@ tp_channel_dispose (GObject *object) g_object_unref (self->priv->connection); self->priv->connection = NULL; +finally: ((GObjectClass *) tp_channel_parent_class)->dispose (object); }
Approved.
Merged; will be in 0.7.32.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.