aboutsummaryrefslogtreecommitdiff
path: root/libdbusmenu-glib/server.c
diff options
context:
space:
mode:
authorTed Gould <ted@gould.cx>2010-11-18 09:22:24 -0600
committerTed Gould <ted@gould.cx>2010-11-18 09:22:24 -0600
commitacf4557c9c5b7d87c5b7b0f1df2b535a6dd11671 (patch)
treef600c3415a722ecd1222d850380a14dfd61a31b2 /libdbusmenu-glib/server.c
parent72da1b32a6a834de66496fbaa6f3c57cac4d4d7a (diff)
downloadlibdbusmenu-acf4557c9c5b7d87c5b7b0f1df2b535a6dd11671.tar.gz
libdbusmenu-acf4557c9c5b7d87c5b7b0f1df2b535a6dd11671.tar.bz2
libdbusmenu-acf4557c9c5b7d87c5b7b0f1df2b535a6dd11671.zip
Wow, I've learned a lot about better ways to do this :)
Diffstat (limited to 'libdbusmenu-glib/server.c')
-rw-r--r--libdbusmenu-glib/server.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/libdbusmenu-glib/server.c b/libdbusmenu-glib/server.c
index 8d5c558..fd507a2 100644
--- a/libdbusmenu-glib/server.c
+++ b/libdbusmenu-glib/server.c
@@ -852,21 +852,21 @@ static void
bus_get_group_properties (DbusmenuServer * server, GVariant * params, GDBusMethodInvocation * invocation)
{
DbusmenuServerPrivate * priv = DBUSMENU_SERVER_GET_PRIVATE(server);
- GVariantIter * ids = NULL;
- g_variant_get_child(params, 0, "ai", &ids);
+ GVariantIter ids;
+ g_variant_iter_init(&ids, params);
- GVariantBuilder * builder = g_variant_builder_new(G_VARIANT_TYPE("a(ia{sv})"));
+ GVariantBuilder builder;
+ g_variant_builder_init(&builder, G_VARIANT_TYPE("a(ia{sv})"));
- GVariant * id;
- while ((id = g_variant_iter_next_value(ids)) != NULL) {
- DbusmenuMenuitem * mi = dbusmenu_menuitem_find_id(priv->root, g_variant_get_int32(id));
+ guint id;
+ while (g_variant_iter_next(&ids, "i", &id)) {
+ DbusmenuMenuitem * mi = dbusmenu_menuitem_find_id(priv->root, id);
if (mi == NULL) continue;
- g_variant_builder_add(builder, "ia{sv}", g_variant_get_int32(id), dbusmenu_menuitem_properties_variant(mi));
+ g_variant_builder_add(&builder, "ia{sv}", id, dbusmenu_menuitem_properties_variant(mi));
}
- GVariant * ret = g_variant_builder_end(builder);
- g_variant_builder_unref(builder);
+ GVariant * ret = g_variant_builder_end(&builder);
g_dbus_method_invocation_return_value(invocation, ret);