[Telepathy-commits] [telepathy-salut/master] ft-manager: disconnect channel signals when disposing
Guillaume Desmottes
guillaume.desmottes at collabora.co.uk
Fri Nov 21 03:46:49 PST 2008
---
src/salut-ft-manager.c | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/src/salut-ft-manager.c b/src/salut-ft-manager.c
index ecd499c..a37680a 100644
--- a/src/salut-ft-manager.c
+++ b/src/salut-ft-manager.c
@@ -146,6 +146,7 @@ salut_ft_manager_dispose (GObject *object)
{
SalutFtManager *self = SALUT_FT_MANAGER (object);
SalutFtManagerPrivate *priv = SALUT_FT_MANAGER_GET_PRIVATE (self);
+ GList *l;
if (priv->dispose_has_run)
return;
@@ -168,6 +169,14 @@ salut_ft_manager_dispose (GObject *object)
priv->contact_manager = NULL;
}
+ for (l = priv->channels; l != NULL; l = g_list_next (l))
+ {
+ SalutFileTransferChannel *chan = l->data;
+
+ g_signal_handlers_disconnect_matched (chan, G_SIGNAL_MATCH_DATA, 0, 0,
+ NULL, NULL, self);
+ }
+
if (priv->channels)
g_list_free (priv->channels);
--
1.5.6.5
More information about the Telepathy-commits
mailing list