aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-glib
diff options
context:
space:
mode:
authorKen VanDine <ken.vandine@canonical.com>2011-03-28 15:15:29 -0400
committerKen VanDine <ken.vandine@canonical.com>2011-03-28 15:15:29 -0400
commitf63a0ff06df6481d36911e385d8bb90ff901464a (patch)
treeb9235f978e144fdb72f0eb346cd8a55bd78fe429 /libdbusmenu-glib
parentfcb2bd4e6936d7f7e40537f19e7dc13eb9d50ec2 (diff)
parent3473a33b499be4d6c2bf7762bf836e1139353970 (diff)
downloadlibdbusmenu-f63a0ff06df6481d36911e385d8bb90ff901464a.tar.gz
libdbusmenu-f63a0ff06df6481d36911e385d8bb90ff901464a.tar.bz2
libdbusmenu-f63a0ff06df6481d36911e385d8bb90ff901464a.zip
releasing version 0.4.0-0ubuntu2
Diffstat (limited to 'libdbusmenu-glib')
-rw-r--r--libdbusmenu-glib/client.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/libdbusmenu-glib/client.c b/libdbusmenu-glib/client.c
index 24d5c5d..49dc2d5 100644
--- a/libdbusmenu-glib/client.c
+++ b/libdbusmenu-glib/client.c
@@ -598,10 +598,10 @@ get_properties_callback (GObject *obj, GAsyncResult * res, gpointer user_data)
}
/* Callback all the folks we can find */
- GVariant * child = g_variant_get_child_value(params, 0);
+ GVariant * parent = g_variant_get_child_value(params, 0);
GVariantIter iter;
- g_variant_iter_init(&iter, child);
- g_variant_unref(child);
+ g_variant_iter_init(&iter, parent);
+ GVariant * child;
while ((child = g_variant_iter_next_value(&iter)) != NULL) {
if (g_strcmp0(g_variant_get_type_string(child), "(ia{sv})") != 0) {
g_warning("Properties return signature is not '(ia{sv})' it is '%s'", g_variant_get_type_string(child));
@@ -632,6 +632,7 @@ get_properties_callback (GObject *obj, GAsyncResult * res, gpointer user_data)
g_variant_unref(properties);
g_variant_unref(child);
}
+ g_variant_unref(parent);
g_variant_unref(params);
/* Provide errors for those who we can't */
@@ -1370,7 +1371,7 @@ menuitem_get_properties_replace_cb (GVariant * properties, GError * error, gpoin
GList * current_props = dbusmenu_menuitem_properties_list(DBUSMENU_MENUITEM(data));
GList * tmp = NULL;
- if (properties != NULL) {
+ if (properties != NULL && have_error == FALSE) {
GVariantIter iter;
g_variant_iter_init(&iter, properties);
gchar * name; GVariant * value;
@@ -1378,7 +1379,7 @@ menuitem_get_properties_replace_cb (GVariant * properties, GError * error, gpoin
/* Remove the entries from the current list that we have new
values for. This way we don't create signals of them being
removed with the duplication of the value being changed. */
- while (g_variant_iter_loop(&iter, "{sv}", &name, &value) && have_error == FALSE) {
+ while (g_variant_iter_loop(&iter, "{sv}", &name, &value)) {
for (tmp = current_props; tmp != NULL; tmp = g_list_next(tmp)) {
if (g_strcmp0((gchar *)tmp->data, name) == 0) {
current_props = g_list_delete_link(current_props, tmp);