[Telepathy-commits] [telepathy-salut/master] lib/gibber/gibber-iq-helper.c: Remove handler when the IqHelper is freed

Alban Crequy alban.crequy at collabora.co.uk
Tue Nov 25 03:59:11 PST 2008


20080721113509-a41c0-e2e2122adbbfc5d8c1cd6b473d1f58f4644a3077.gz
---
 lib/gibber/gibber-iq-helper.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/lib/gibber/gibber-iq-helper.c b/lib/gibber/gibber-iq-helper.c
index e01075c..8a5bebe 100644
--- a/lib/gibber/gibber-iq-helper.c
+++ b/lib/gibber/gibber-iq-helper.c
@@ -235,6 +235,9 @@ gibber_iq_helper_dispose (GObject *object)
 
   priv->dispose_has_run = TRUE;
 
+  g_signal_handlers_disconnect_by_func (priv->xmpp_connection,
+      xmpp_connection_received_stanza_cb, self);
+
   if (priv->xmpp_connection != NULL)
     {
       g_object_unref (priv->xmpp_connection);
@@ -252,6 +255,7 @@ gibber_iq_helper_finalize (GObject *object)
   GibberIqHelperPrivate *priv = GIBBER_IQ_HELPER_GET_PRIVATE (self);
 
   g_hash_table_destroy (priv->id_handlers);
+  priv->id_handlers = NULL;
 
   G_OBJECT_CLASS (gibber_iq_helper_parent_class)->finalize (object);
 }
-- 
1.5.6.5




More information about the Telepathy-commits mailing list