diff options
author | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2010-07-06 17:23:46 +0800 |
---|---|---|
committer | Guillaume Desmottes <guillaume.desmottes@collabora.co.uk> | 2010-07-06 17:27:09 +0800 |
commit | c17ffb62ebc6e69071e0a0380b2402ba8201bb83 (patch) | |
tree | dfa3f922f768fa1052d7fb08fe7098e0c151aabe /libempathy | |
parent | 5be45ef12ac579cbbb914f4d056df51a787bf98f (diff) | |
download | gsoc2013-empathy-c17ffb62ebc6e69071e0a0380b2402ba8201bb83.tar gsoc2013-empathy-c17ffb62ebc6e69071e0a0380b2402ba8201bb83.tar.gz gsoc2013-empathy-c17ffb62ebc6e69071e0a0380b2402ba8201bb83.tar.bz2 gsoc2013-empathy-c17ffb62ebc6e69071e0a0380b2402ba8201bb83.tar.lz gsoc2013-empathy-c17ffb62ebc6e69071e0a0380b2402ba8201bb83.tar.xz gsoc2013-empathy-c17ffb62ebc6e69071e0a0380b2402ba8201bb83.tar.zst gsoc2013-empathy-c17ffb62ebc6e69071e0a0380b2402ba8201bb83.zip |
dispatcher_channel_invalidated_cb: always remove invalidated chan from the list
It doesn't hurt to always try to remove it and prevent us of keeping an
invalidated or disposed object around if something weird happens.
Diffstat (limited to 'libempathy')
-rw-r--r-- | libempathy/empathy-dispatcher.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libempathy/empathy-dispatcher.c b/libempathy/empathy-dispatcher.c index ad9a236c2..778d3be62 100644 --- a/libempathy/empathy-dispatcher.c +++ b/libempathy/empathy-dispatcher.c @@ -414,6 +414,8 @@ dispatcher_channel_invalidated_cb (TpProxy *proxy, connection = tp_channel_borrow_connection (TP_CHANNEL (proxy)); + priv->channels = g_list_remove (priv->channels, proxy); + cd = g_hash_table_lookup (priv->connections, connection); /* Connection itself invalidated? */ if (cd == NULL) @@ -425,8 +427,6 @@ dispatcher_channel_invalidated_cb (TpProxy *proxy, g_hash_table_remove (cd->dispatched_channels, object_path); g_hash_table_remove (cd->dispatching_channels, object_path); - - priv->channels = g_list_remove (priv->channels, proxy); } static void |