aboutsummaryrefslogtreecommitdiffstats
path: root/libempathy/empathy-tp-call.c
diff options
context:
space:
mode:
authorXavier Claessens <xclaesse@src.gnome.org>2008-02-26 21:31:28 +0800
committerXavier Claessens <xclaesse@src.gnome.org>2008-02-26 21:31:28 +0800
commit440dc828a0033f19deec7ba2c7a972e0f025415c (patch)
tree722b52c27724589d46270666e13da7ad624a6b44 /libempathy/empathy-tp-call.c
parent049b44f2b14fb6bf14751ec8374366d336237c6b (diff)
downloadgsoc2013-empathy-440dc828a0033f19deec7ba2c7a972e0f025415c.tar
gsoc2013-empathy-440dc828a0033f19deec7ba2c7a972e0f025415c.tar.gz
gsoc2013-empathy-440dc828a0033f19deec7ba2c7a972e0f025415c.tar.bz2
gsoc2013-empathy-440dc828a0033f19deec7ba2c7a972e0f025415c.tar.lz
gsoc2013-empathy-440dc828a0033f19deec7ba2c7a972e0f025415c.tar.xz
gsoc2013-empathy-440dc828a0033f19deec7ba2c7a972e0f025415c.tar.zst
gsoc2013-empathy-440dc828a0033f19deec7ba2c7a972e0f025415c.zip
Cancel name owner watch when the call is finalized
svn path=/trunk/; revision=672
Diffstat (limited to 'libempathy/empathy-tp-call.c')
-rw-r--r--libempathy/empathy-tp-call.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/libempathy/empathy-tp-call.c b/libempathy/empathy-tp-call.c
index f92aef492..d94c78f1f 100644
--- a/libempathy/empathy-tp-call.c
+++ b/libempathy/empathy-tp-call.c
@@ -537,6 +537,7 @@ tp_call_start_stream_engine (EmpathyTpCall *call)
G_CALLBACK (tp_call_invalidated_cb),
call);
+ /* FIXME: dbus daemon should be unique */
priv->dbus_daemon = tp_dbus_daemon_new (tp_get_bus ());
tp_dbus_daemon_watch_name_owner (priv->dbus_daemon, STREAM_ENGINE_BUS_NAME,
tp_call_watch_name_owner_cb,
@@ -631,7 +632,13 @@ tp_call_finalize (GObject *object)
g_object_unref (priv->contact);
if (priv->dbus_daemon != NULL)
+ {
+ tp_dbus_daemon_cancel_name_owner_watch (priv->dbus_daemon,
+ STREAM_ENGINE_BUS_NAME,
+ tp_call_watch_name_owner_cb,
+ object);
g_object_unref (priv->dbus_daemon);
+ }
(G_OBJECT_CLASS (empathy_tp_call_parent_class)->finalize) (object);
}