[telepathy-mission-control/master] McdClientProxy: if NameOwnerChanged is received before GetNameOwner returns, don't leak our unique name

Simon McVittie simon.mcvittie at collabora.co.uk
Thu May 28 07:01:17 PDT 2009


Previously, self->priv->unique_name would be set by NameOwnerChanged, then
re-set by GetNameOwner (without freeing the previous value).
---
 src/mcd-client.c |    8 +++++---
 1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/mcd-client.c b/src/mcd-client.c
index 64d94cf..3676b1a 100644
--- a/src/mcd-client.c
+++ b/src/mcd-client.c
@@ -109,10 +109,12 @@ mcd_client_proxy_unique_name_cb (TpDBusDaemon *dbus_daemon,
     {
         DEBUG ("Error getting unique name, assuming not active: %s %d: %s",
                g_quark_to_string (error->domain), error->code, error->message);
-        unique_name = "";
+        _mcd_client_proxy_set_inactive (self);
+    }
+    else
+    {
+        _mcd_client_proxy_set_active (self, unique_name);
     }
-
-    self->priv->unique_name = g_strdup (unique_name);
 
     mcd_client_proxy_emit_ready (self);
 }
-- 
1.5.6.5




More information about the telepathy-commits mailing list