diff options
author | Charles Kerr <charles.kerr@canonical.com> | 2012-04-09 12:14:56 -0500 |
---|---|---|
committer | Charles Kerr <charles.kerr@canonical.com> | 2012-04-09 12:14:56 -0500 |
commit | 3c5425865fb447d48e5f0ef1f38726a0f1a10271 (patch) | |
tree | 62ce7ffca31c51e20bfebc3ab343eeff545d40f5 | |
parent | 62d50f5b58529493bf1029ef90d264e0f16bf0bb (diff) | |
parent | fcbbfff1269c3a923358c31587319239d183508a (diff) | |
download | libdbusmenu-3c5425865fb447d48e5f0ef1f38726a0f1a10271.tar.gz libdbusmenu-3c5425865fb447d48e5f0ef1f38726a0f1a10271.tar.bz2 libdbusmenu-3c5425865fb447d48e5f0ef1f38726a0f1a10271.zip |
merge lp:~ted/dbusmenu/about-to-show-tuple to fix about-to-show grouping.
-rw-r--r-- | libdbusmenu-glib/server.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libdbusmenu-glib/server.c b/libdbusmenu-glib/server.c index 091b243..ebe0082 100644 --- a/libdbusmenu-glib/server.c +++ b/libdbusmenu-glib/server.c @@ -1831,12 +1831,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 +1873,7 @@ bus_about_to_show_group (DbusmenuServer * server, GVariant * params, GDBusMethod } g_variant_unref(errors); + g_variant_unref(items); return; } |