On Thu, 07.11.13 13:49, Marc-Antoine Perennou (marc-anto...@perennou.com) wrote:
Applied! Thanks! > --- > src/libsystemd-bus/bus-util.c | 29 ++++++++++++----------------- > 1 file changed, 12 insertions(+), 17 deletions(-) > > diff --git a/src/libsystemd-bus/bus-util.c b/src/libsystemd-bus/bus-util.c > index 13ad444..2a9cd4f 100644 > --- a/src/libsystemd-bus/bus-util.c > +++ b/src/libsystemd-bus/bus-util.c > @@ -545,33 +545,28 @@ int bus_print_property(const char *name, sd_bus_message > *property, bool all) { > > case SD_BUS_TYPE_ARRAY: > if (streq(contents, "s")) { > - bool space = false; > - char tp; > - const char *cnt; > + bool first = true; > + const char *str; > > r = sd_bus_message_enter_container(property, > SD_BUS_TYPE_ARRAY, contents); > if (r < 0) > return r; > > - r = sd_bus_message_peek_type(property, &tp, &cnt); > + while((r = sd_bus_message_read_basic(property, > SD_BUS_TYPE_STRING, &str)) > 0) { > + if (first) > + printf("%s=", name); > + > + printf("%s%s", first ? "" : " ", str); > + > + first = false; > + } > if (r < 0) > return r; > > - if (all || cnt) { > - const char *str; > - > + if (first && all) > printf("%s=", name); > - > - while((r = > sd_bus_message_read_basic(property, SD_BUS_TYPE_STRING, &str)) >= 0) { > - printf("%s%s", space ? " " : "", > str); > - > - space = true; > - } > - if (r < 0) > - return r; > - > + if (!first || all) > puts(""); > - } > > r = sd_bus_message_exit_container(property); > if (r < 0) Lennart -- Lennart Poettering, Red Hat _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/systemd-devel