From 8852d4e9a08e7fbc9df7fb99a54b112f5049ee19 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Fri, 20 Jan 2012 08:02:26 -0500 Subject: [PATCH] Fix a refcounting error 'new' is created floating, therefore it is consumed by g_settings_set, and unreffing it after that call is not right. --- gio/gsettings-tool.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gio/gsettings-tool.c b/gio/gsettings-tool.c index e84eb3527..993fa59e5 100644 --- a/gio/gsettings-tool.c +++ b/gio/gsettings-tool.c @@ -457,6 +457,7 @@ gsettings_set (GSettings *settings, existing = g_settings_get_value (settings, key); type = g_variant_get_type (existing); + g_variant_unref (existing); new = g_variant_parse (type, value, NULL, NULL, &error); @@ -503,8 +504,6 @@ gsettings_set (GSettings *settings, } g_settings_set_value (settings, key, new); - g_variant_unref (existing); - g_variant_unref (new); g_settings_sync (); -- 2.34.1