aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy/empathy-tp-chat.c
diff options
context:
space:
mode:
authorWill Thompson <will.thompson@collabora.co.uk>2009-04-13 17:34:39 +0800
committerXavier Claessens <xclaesse@src.gnome.org>2009-04-13 17:34:39 +0800
commit185b19dad43ea2f69a9958693430724b8537bc02 (patch)
treeb1ff34a74503aa98e0d88c4092f2f358f0bf1fbe /libempathy/empathy-tp-chat.c
parent58ee619a89b41a6984ac7a1d9d578e8b0cc4a499 (diff)
downloadgsoc2013-empathy-185b19dad43ea2f69a9958693430724b8537bc02.tar
gsoc2013-empathy-185b19dad43ea2f69a9958693430724b8537bc02.tar.gz
gsoc2013-empathy-185b19dad43ea2f69a9958693430724b8537bc02.tar.bz2
gsoc2013-empathy-185b19dad43ea2f69a9958693430724b8537bc02.tar.lz
gsoc2013-empathy-185b19dad43ea2f69a9958693430724b8537bc02.tar.xz
gsoc2013-empathy-185b19dad43ea2f69a9958693430724b8537bc02.tar.zst
gsoc2013-empathy-185b19dad43ea2f69a9958693430724b8537bc02.zip
Unref TpChat's channel after emitting destroy.
This allows callbacks connected to "destroy" to call functions which use priv->channel to work. Fixes Gnome bug #578356. Signed-off-by: Will Thompson <will.thompson@collabora.co.uk> svn path=/trunk/; revision=2821
Diffstat (limited to 'libempathy/empathy-tp-chat.c')
-rw-r--r--libempathy/empathy-tp-chat.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/libempathy/empathy-tp-chat.c b/libempathy/empathy-tp-chat.c
index 1329c61be..ef0ac6c2d 100644
--- a/libempathy/empathy-tp-chat.c
+++ b/libempathy/empathy-tp-chat.c
@@ -102,12 +102,11 @@ tp_chat_invalidated_cb (TpProxy *proxy,
{
EmpathyTpChatPriv *priv = GET_PRIV (chat);
- g_object_unref (priv->channel);
- priv->channel = NULL;
-
DEBUG ("Channel invalidated: %s", message);
g_signal_emit (chat, signals[DESTROY], 0);
+ g_object_unref (priv->channel);
+ priv->channel = NULL;
}
static void