aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy/empathy-tp-call.c
diff options
context:
space:
mode:
authorSjoerd Simons <sjoerd.simons@collabora.co.uk>2009-01-10 00:15:10 +0800
committerXavier Claessens <xclaesse@src.gnome.org>2009-01-10 00:15:10 +0800
commitac3d19d800cc16b24615e82b6b351f880c13d710 (patch)
tree7ea8980ee847a076159923d269b4c80ca73834a0 /libempathy/empathy-tp-call.c
parent2e78b7d4c7756864fba8b6024ad85b0f02ec5e0a (diff)
downloadgsoc2013-empathy-ac3d19d800cc16b24615e82b6b351f880c13d710.tar
gsoc2013-empathy-ac3d19d800cc16b24615e82b6b351f880c13d710.tar.gz
gsoc2013-empathy-ac3d19d800cc16b24615e82b6b351f880c13d710.tar.bz2
gsoc2013-empathy-ac3d19d800cc16b24615e82b6b351f880c13d710.tar.lz
gsoc2013-empathy-ac3d19d800cc16b24615e82b6b351f880c13d710.tar.xz
gsoc2013-empathy-ac3d19d800cc16b24615e82b6b351f880c13d710.tar.zst
gsoc2013-empathy-ac3d19d800cc16b24615e82b6b351f880c13d710.zip
Don't close channels as a side-effect of disposing wrapper objects
Signed-off-by: Sjoerd Simons <sjoerd.simons@collabora.co.uk> svn path=/trunk/; revision=2183
Diffstat (limited to 'libempathy/empathy-tp-call.c')
-rw-r--r--libempathy/empathy-tp-call.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/libempathy/empathy-tp-call.c b/libempathy/empathy-tp-call.c
index 22c86232a..65c09ce65 100644
--- a/libempathy/empathy-tp-call.c
+++ b/libempathy/empathy-tp-call.c
@@ -478,7 +478,7 @@ tp_call_constructor (GType type,
return object;
}
-static void
+static void
tp_call_finalize (GObject *object)
{
EmpathyTpCallPriv *priv = GET_PRIV (object);
@@ -489,9 +489,18 @@ tp_call_finalize (GObject *object)
g_slice_free (EmpathyTpCallStream, priv->video);
g_object_unref (priv->group);
+ if (priv->group != NULL)
+ g_object_unref (priv->group);
+
+ priv->group = NULL;
+
if (priv->channel != NULL)
{
- empathy_tp_call_close (EMPATHY_TP_CALL (object));
+ g_signal_handlers_disconnect_by_func (priv->channel,
+ tp_call_channel_invalidated_cb, object);
+
+ g_object_unref (priv->channel);
+ priv->channel = NULL;
}
if (priv->stream_engine != NULL)