[glib] Fix a refcounting error
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib] Fix a refcounting error
- Date: Fri, 20 Jan 2012 20:02:51 +0000 (UTC)
commit 8852d4e9a08e7fbc9df7fb99a54b112f5049ee19
Author: Matthias Clasen <mclasen redhat com>
Date: Fri Jan 20 08:02:26 2012 -0500
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 files changed, 1 insertions(+), 2 deletions(-)
---
diff --git a/gio/gsettings-tool.c b/gio/gsettings-tool.c
index e84eb35..993fa59 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 ();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]