[Telepathy-commits] [telepathy-glib/master] TpPresenceMixin: SimplePresence.SetPresence: don't leak a copy of message

Simon McVittie simon.mcvittie at collabora.co.uk
Wed Mar 4 09:07:05 PST 2009


---
 telepathy-glib/presence-mixin.c |   12 ++++--------
 1 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/telepathy-glib/presence-mixin.c b/telepathy-glib/presence-mixin.c
index af812d2..979b6ef 100644
--- a/telepathy-glib/presence-mixin.c
+++ b/telepathy-glib/presence-mixin.c
@@ -1171,7 +1171,6 @@ tp_presence_mixin_simple_presence_set_presence (
   int s;
   GError *error = NULL;
   GHashTable *optional_arguments = NULL;
-  GValue vmessage = { 0, };
 
   DEBUG ("called.");
 
@@ -1183,13 +1182,10 @@ tp_presence_mixin_simple_presence_set_presence (
 
   if (*message != '\0')
     {
-      g_value_init (&vmessage, G_TYPE_STRING);
-      g_value_set_string (&vmessage, message);
-
-      optional_arguments = g_hash_table_new (g_str_hash, g_str_equal);
-
-      g_hash_table_insert (optional_arguments, "message", &vmessage);
-
+      optional_arguments = g_hash_table_new_full (g_str_hash, g_str_equal,
+          NULL, (GDestroyNotify) tp_g_value_slice_free);
+      g_hash_table_insert (optional_arguments, "message",
+          tp_g_value_slice_new_string (message));
       status_to_set.optional_arguments = optional_arguments;
     }
 
-- 
1.5.6.5




More information about the telepathy-commits mailing list