empathy r826 - trunk/libempathy
- From: xclaesse svn gnome org
- To: svn-commits-list gnome org
- Subject: empathy r826 - trunk/libempathy
- Date: Tue, 25 Mar 2008 16:28:01 +0000 (GMT)
Author: xclaesse
Date: Tue Mar 25 16:28:01 2008
New Revision: 826
URL: http://svn.gnome.org/viewvc/empathy?rev=826&view=rev
Log:
Disconnect invalidated signal when TpCall is finalized. Fixes bug #523766.
Modified:
trunk/libempathy/empathy-tp-call.c
Modified: trunk/libempathy/empathy-tp-call.c
==============================================================================
--- trunk/libempathy/empathy-tp-call.c (original)
+++ trunk/libempathy/empathy-tp-call.c Tue Mar 25 16:28:01 2008
@@ -232,9 +232,13 @@
gchar *message,
EmpathyTpCall *call)
{
+ EmpathyTpCallPriv *priv = GET_PRIV (call);
+
empathy_debug (DEBUG_DOMAIN, "Stream engine proxy invalidated: %s",
message);
empathy_tp_call_close_channel (call);
+ g_object_unref (priv->stream_engine);
+ priv->stream_engine = NULL;
}
static void
@@ -263,14 +267,6 @@
G_CALLBACK (tp_call_stream_added_cb), call);
dbus_g_proxy_disconnect_signal (streamed_iface, "StreamRemoved",
G_CALLBACK (tp_call_stream_removed_cb), call);
-
- if (priv->stream_engine)
- {
- g_signal_handlers_disconnect_by_func (priv->stream_engine,
- tp_call_invalidated_cb, call);
- g_object_unref (priv->stream_engine);
- priv->stream_engine = NULL;
- }
}
static void
@@ -651,7 +647,11 @@
g_object_unref (priv->channel);
if (priv->stream_engine != NULL)
- g_object_unref (priv->stream_engine);
+ {
+ g_signal_handlers_disconnect_by_func (priv->stream_engine,
+ tp_call_invalidated_cb, object);
+ g_object_unref (priv->stream_engine);
+ }
if (priv->contact != NULL)
g_object_unref (priv->contact);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]