aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-glib/menuitem.c
diff options
context:
space:
mode:
authorChris Coulson <chris.coulson@canonical.com>2013-01-24 15:51:14 +0000
committerChris Coulson <chris.coulson@canonical.com>2013-01-24 15:51:14 +0000
commit189c658f5f76da5995a06a7c6dadf9f09dc9a5ee (patch)
treeef71748b924be491dc22fa6370ab62c9bfdb92d6 /libdbusmenu-glib/menuitem.c
parentb6565b19137f305773e395465a7b8d43ba3404b8 (diff)
downloadlibdbusmenu-189c658f5f76da5995a06a7c6dadf9f09dc9a5ee.tar.gz
libdbusmenu-189c658f5f76da5995a06a7c6dadf9f09dc9a5ee.tar.bz2
libdbusmenu-189c658f5f76da5995a06a7c6dadf9f09dc9a5ee.zip
Fix multiple leaks due to improper use of g_variant_parse()
Diffstat (limited to 'libdbusmenu-glib/menuitem.c')
-rw-r--r--libdbusmenu-glib/menuitem.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libdbusmenu-glib/menuitem.c b/libdbusmenu-glib/menuitem.c
index 42c3709..cd9f978 100644
--- a/libdbusmenu-glib/menuitem.c
+++ b/libdbusmenu-glib/menuitem.c
@@ -1656,7 +1656,9 @@ dbusmenu_menuitem_build_variant (DbusmenuMenuitem * mi, const gchar ** propertie
if (props != NULL) {
g_variant_builder_add_value(&tupleb, props);
} else {
- g_variant_builder_add_value(&tupleb, g_variant_parse(G_VARIANT_TYPE("a{sv}"), "[ ]", NULL, NULL, NULL));
+ GVariant *empty_props = g_variant_parse(G_VARIANT_TYPE("a{sv}"), "[ ]", NULL, NULL, NULL);
+ g_variant_builder_add_value(&tupleb, empty_props);
+ g_variant_unref(empty_props);
}
/* Pillage the children */