aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-glib
diff options
context:
space:
mode:
authorCharles Kerr <charles.kerr@canonical.com>2012-04-11 11:52:59 -0500
committerCharles Kerr <charles.kerr@canonical.com>2012-04-11 11:52:59 -0500
commit4940701cf76bc33c40cb908211b3293ab65d26c5 (patch)
tree7d74195d495fbc7a299a7ffb4598131c7c274ee3 /libdbusmenu-glib
parentecacfc1fab93db37e6b2881cfcc717d192b66e5c (diff)
parent2421f72a9f0acb6afb3e5209a434c409bf3a409d (diff)
downloadlibdbusmenu-4940701cf76bc33c40cb908211b3293ab65d26c5.tar.gz
libdbusmenu-4940701cf76bc33c40cb908211b3293ab65d26c5.tar.bz2
libdbusmenu-4940701cf76bc33c40cb908211b3293ab65d26c5.zip
Import upstream version 0.6.1
Diffstat (limited to 'libdbusmenu-glib')
-rw-r--r--libdbusmenu-glib/server.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/libdbusmenu-glib/server.c b/libdbusmenu-glib/server.c
index 091b243..9e5ef0c 100644
--- a/libdbusmenu-glib/server.c
+++ b/libdbusmenu-glib/server.c
@@ -1288,6 +1288,7 @@ menuitem_signals_remove (DbusmenuMenuitem * mi, gpointer data)
g_signal_handlers_disconnect_by_func(G_OBJECT(mi), G_CALLBACK(menuitem_child_removed), data);
g_signal_handlers_disconnect_by_func(G_OBJECT(mi), G_CALLBACK(menuitem_child_moved), data);
g_signal_handlers_disconnect_by_func(G_OBJECT(mi), G_CALLBACK(menuitem_property_changed), data);
+ g_signal_handlers_disconnect_by_func(G_OBJECT(mi), G_CALLBACK(menuitem_shown), data);
return;
}
@@ -1831,12 +1832,13 @@ bus_about_to_show_group (DbusmenuServer * server, GVariant * params, GDBusMethod
gint32 id;
GVariantIter iter;
GVariantBuilder builder;
-
- g_variant_iter_init(&iter, params);
+
+ GVariant * items = g_variant_get_child_value(params, 0);
+ g_variant_iter_init(&iter, items);
g_variant_builder_init(&builder, G_VARIANT_TYPE("ai"));
gboolean gotone = FALSE;
- while (g_variant_iter_loop(&iter, "(i)", &id)) {
+ while (g_variant_iter_loop(&iter, "i", &id)) {
DbusmenuMenuitem * mi = lookup_menuitem_by_id(server, id);
if (mi != NULL) {
g_timeout_add(0, bus_about_to_show_idle, g_object_ref(mi));
@@ -1872,6 +1874,7 @@ bus_about_to_show_group (DbusmenuServer * server, GVariant * params, GDBusMethod
}
g_variant_unref(errors);
+ g_variant_unref(items);
return;
}