[gnome-control-center] printers: Replace GVariant iteration with direct call to copy value
- From: Robert Ancell <rancell src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-control-center] printers: Replace GVariant iteration with direct call to copy value
- Date: Mon, 30 Mar 2020 03:28:32 +0000 (UTC)
commit 46443af0ca5b63fb0eae6e1287d986a78fada677
Author: Robert Ancell <robert ancell canonical com>
Date: Thu Nov 21 21:29:58 2019 +1300
printers: Replace GVariant iteration with direct call to copy value
panels/printers/pp-new-printer-dialog.c | 20 ++++----------------
1 file changed, 4 insertions(+), 16 deletions(-)
---
diff --git a/panels/printers/pp-new-printer-dialog.c b/panels/printers/pp-new-printer-dialog.c
index 657f45e8a..eed08d063 100644
--- a/panels/printers/pp-new-printer-dialog.c
+++ b/panels/printers/pp-new-printer-dialog.c
@@ -898,7 +898,7 @@ group_physical_devices_dbus_cb (GObject *source_object,
GVariant *output;
g_autoptr(GError) error = NULL;
gchar ***result = NULL;
- gint i, j;
+ gint i;
output = g_dbus_connection_call_finish (G_DBUS_CONNECTION (source_object),
res,
@@ -914,26 +914,14 @@ group_physical_devices_dbus_cb (GObject *source_object,
if (array)
{
GVariantIter *iter;
- GVariantIter *subiter;
- GVariant *item;
+ GStrv device_uris;
result = g_new0 (gchar **, g_variant_n_children (array) + 1);
g_variant_get (array, "aas", &iter);
i = 0;
- while ((item = g_variant_iter_next_value (iter)))
+ while (g_variant_iter_next (iter, "^as", &device_uris))
{
- const gchar *device_uri;
-
- result[i] = g_new0 (gchar *, g_variant_n_children (item) + 1);
- g_variant_get (item, "as", &subiter);
- j = 0;
- while (g_variant_iter_next (subiter, "&s", &device_uri))
- {
- result[i][j] = g_strdup (device_uri);
- j++;
- }
-
- g_variant_unref (item);
+ result[i] = device_uris;
i++;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]