[telepathy-mission-control/master] McdHandlerMap: simplify logic for incrementing handler-process use counter

Simon McVittie simon.mcvittie at collabora.co.uk
Wed May 27 04:13:30 PDT 2009


In the process, don't leak a copy of the unique name if incrementing from
>= 1.

As suggested during code review.
---
 src/mcd-handler-map.c |   14 +++++---------
 1 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/src/mcd-handler-map.c b/src/mcd-handler-map.c
index a4169e7..04e5622 100644
--- a/src/mcd-handler-map.c
+++ b/src/mcd-handler-map.c
@@ -161,19 +161,15 @@ _mcd_handler_map_set_path_handled (McdHandlerMap *self,
 
     if (counter == NULL)
     {
-        counter = g_slice_new0 (gsize);
+        counter = g_slice_new (gsize);
+        *counter = 1;
+        g_hash_table_insert (self->priv->handler_processes,
+                             g_strdup (unique_name), counter);
     }
     else
     {
-        /* take ownership */
-        g_hash_table_steal (self->priv->handler_processes,
-                            unique_name);
+        ++*counter;
     }
-
-    ++*counter;
-
-    g_hash_table_insert (self->priv->handler_processes,
-                         g_strdup (unique_name), counter);
 }
 
 static void
-- 
1.5.6.5




More information about the telepathy-commits mailing list