[Pkg-telepathy-commits] [telepathy-mission-control-6] 50/90: McdClient: replace tp_dbus_daemon_watch_name_owner with g_bus_watch_name_on_connection

Simon McVittie smcv at debian.org
Wed May 14 12:09:04 UTC 2014


This is an automated email from the git hooks/post-receive script.

smcv pushed a commit to branch debian
in repository telepathy-mission-control-6.

commit b7914a7e7fa1d6fe6695d7fc256b6caca2d23604
Author: Simon McVittie <simon.mcvittie at collabora.co.uk>
Date:   Wed Mar 26 18:58:17 2014 +0000

    McdClient: replace tp_dbus_daemon_watch_name_owner with g_bus_watch_name_on_connection
---
 src/mcd-client.c | 42 +++++++++++++++++++++++++++++-------------
 1 file changed, 29 insertions(+), 13 deletions(-)

diff --git a/src/mcd-client.c b/src/mcd-client.c
index 6a1522e..1cc006f 100644
--- a/src/mcd-client.c
+++ b/src/mcd-client.c
@@ -64,6 +64,7 @@ struct _McdClientProxyPrivate
     GStrv capability_tokens;
 
     gchar *unique_name;
+    guint name_owner_watch;
     guint ready_lock;
     gboolean introspect_started;
     gboolean ready;
@@ -945,12 +946,9 @@ mcd_client_proxy_introspect (gpointer data)
 }
 
 static void
-mcd_client_proxy_unique_name_cb (TpDBusDaemon *dbus_daemon,
-                                 const gchar *well_known_name G_GNUC_UNUSED,
-                                 const gchar *unique_name,
-                                 gpointer user_data)
+mcd_client_proxy_unique_name_cb (McdClientProxy *self,
+                                 const gchar *unique_name)
 {
-    McdClientProxy *self = MCD_CLIENT_PROXY (user_data);
     gboolean should_recover = FALSE;
 
     g_object_ref (self);
@@ -977,6 +975,24 @@ mcd_client_proxy_unique_name_cb (TpDBusDaemon *dbus_daemon,
 }
 
 static void
+mcd_client_proxy_unique_name_found_cb (GDBusConnection *conn G_GNUC_UNUSED,
+    const gchar *well_known_name G_GNUC_UNUSED,
+    const gchar *unique_name,
+    gpointer user_data)
+{
+    mcd_client_proxy_unique_name_cb (MCD_CLIENT_PROXY (user_data),
+        unique_name);
+}
+
+static void
+mcd_client_proxy_unique_name_lost_cb (GDBusConnection *conn G_GNUC_UNUSED,
+    const gchar *well_known_name G_GNUC_UNUSED,
+    gpointer user_data)
+{
+    mcd_client_proxy_unique_name_cb (MCD_CLIENT_PROXY (user_data), "");
+}
+
+static void
 mcd_client_proxy_dispose (GObject *object)
 {
     McdClientProxy *self = MCD_CLIENT_PROXY (object);
@@ -988,10 +1004,8 @@ mcd_client_proxy_dispose (GObject *object)
 
     self->priv->disposed = TRUE;
 
-    tp_dbus_daemon_cancel_name_owner_watch (tp_proxy_get_dbus_daemon (self),
-                                            tp_proxy_get_bus_name (self),
-                                            mcd_client_proxy_unique_name_cb,
-                                            self);
+    g_bus_unwatch_name (self->priv->name_owner_watch);
+    self->priv->name_owner_watch = 0;
 
     tp_clear_pointer (&self->priv->capability_tokens, g_strfreev);
 
@@ -1039,10 +1053,12 @@ mcd_client_proxy_constructed (GObject *object)
 
     DEBUG ("%s", bus_name);
 
-    tp_dbus_daemon_watch_name_owner (tp_proxy_get_dbus_daemon (self),
-                                     bus_name,
-                                     mcd_client_proxy_unique_name_cb,
-                                     self, NULL);
+    self->priv->name_owner_watch = g_bus_watch_name_on_connection (
+        tp_proxy_get_dbus_connection (self),
+        bus_name, G_BUS_NAME_WATCHER_FLAGS_NONE,
+        mcd_client_proxy_unique_name_found_cb,
+        mcd_client_proxy_unique_name_lost_cb,
+        self, NULL);
 
     if (self->priv->unique_name != NULL)
     {

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-telepathy/telepathy-mission-control-6.git



More information about the Pkg-telepathy-commits mailing list