diff options
author | Chandni Verma <chandniverma2112@gmail.com> | 2012-05-29 19:30:29 +0800 |
---|---|---|
committer | Chandni Verma <chandniverma2112@gmail.com> | 2012-05-29 19:30:29 +0800 |
commit | 43383bec9be58220863824f14f35dea72922b0f1 (patch) | |
tree | 963797caef43844c51ed5722225251cad11c8dda /libempathy | |
parent | 6722d80f683accae86977fc538069889f6f1918a (diff) | |
download | gsoc2013-empathy-43383bec9be58220863824f14f35dea72922b0f1.tar gsoc2013-empathy-43383bec9be58220863824f14f35dea72922b0f1.tar.gz gsoc2013-empathy-43383bec9be58220863824f14f35dea72922b0f1.tar.bz2 gsoc2013-empathy-43383bec9be58220863824f14f35dea72922b0f1.tar.lz gsoc2013-empathy-43383bec9be58220863824f14f35dea72922b0f1.tar.xz gsoc2013-empathy-43383bec9be58220863824f14f35dea72922b0f1.tar.zst gsoc2013-empathy-43383bec9be58220863824f14f35dea72922b0f1.zip |
Disconnect all aggregator signal handlers on disposing EmpathyIndividualManager
Diffstat (limited to 'libempathy')
-rw-r--r-- | libempathy/empathy-individual-manager.c | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/libempathy/empathy-individual-manager.c b/libempathy/empathy-individual-manager.c index 28f35df2d..a14f64c37 100644 --- a/libempathy/empathy-individual-manager.c +++ b/libempathy/empathy-individual-manager.c @@ -24,6 +24,7 @@ #include <string.h> +#include <telepathy-glib/telepathy-glib.h> #include <telepathy-glib/account-manager.h> #include <telepathy-glib/enums.h> #include <telepathy-glib/proxy-subclass.h> @@ -251,9 +252,6 @@ individual_manager_dispose (GObject *object) EmpathyIndividualManagerPriv *priv = GET_PRIV (object); g_hash_table_unref (priv->individuals); - - g_signal_handlers_disconnect_by_func (priv->aggregator, - aggregator_individuals_changed_cb, object); tp_clear_object (&priv->aggregator); G_OBJECT_CLASS (empathy_individual_manager_parent_class)->dispose (object); @@ -382,10 +380,10 @@ empathy_individual_manager_init (EmpathyIndividualManager *self) g_free, g_object_unref); priv->aggregator = folks_individual_aggregator_new (); - g_signal_connect (priv->aggregator, "individuals-changed-detailed", - G_CALLBACK (aggregator_individuals_changed_cb), self); - g_signal_connect (priv->aggregator, "notify::is-quiescent", - G_CALLBACK (aggregator_is_quiescent_notify_cb), self); + tp_g_signal_connect_object (priv->aggregator, "individuals-changed-detailed", + G_CALLBACK (aggregator_individuals_changed_cb), self, 0); + tp_g_signal_connect_object (priv->aggregator, "notify::is-quiescent", + G_CALLBACK (aggregator_is_quiescent_notify_cb), self, 0); folks_individual_aggregator_prepare (priv->aggregator, NULL, NULL); } |