X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Flibsystemd-bus%2Fbus-introspect.c;h=1965364cd0ae26a62350922c532724c2ed7fe433;hp=31788782edee19888cf0c8b01f20237f2db0cf1c;hb=95c4fe827195b47fad7cc87a3f84bf3af6b657c2;hpb=f11ca85a897c770c10bf5aef79b31e955bcb3c13 diff --git a/src/libsystemd-bus/bus-introspect.c b/src/libsystemd-bus/bus-introspect.c index 31788782e..1965364cd 100644 --- a/src/libsystemd-bus/bus-introspect.c +++ b/src/libsystemd-bus/bus-introspect.c @@ -63,7 +63,7 @@ int introspect_write_child_nodes(struct introspect *i, Set *s, const char *prefi const char *e; e = object_path_startswith(node, prefix); - if (e) + if (e && e[0]) fprintf(i->f, " \n", e); free(node); @@ -103,21 +103,18 @@ static int introspect_write_arguments(struct introspect *i, const char *signatur fprintf(i->f, " f, " direction=\"%s\">\n", direction); + fprintf(i->f, " direction=\"%s\"/>\n", direction); else - fputs(">\n", i->f); + fputs("/>\n", i->f); signature += l; } } -int introspect_write_interface(struct introspect *i, const char *interface, const sd_bus_vtable *v) { +int introspect_write_interface(struct introspect *i, const sd_bus_vtable *v) { assert(i); - assert(interface); assert(v); - fprintf(i->f, " \n", interface); - for (; v->type != _SD_BUS_VTABLE_END; v++) { switch (v->type) { @@ -155,7 +152,6 @@ int introspect_write_interface(struct introspect *i, const char *interface, cons } - fputs(" \n", i->f); return 0; } @@ -173,7 +169,7 @@ int introspect_finish(struct introspect *i, sd_bus *bus, sd_bus_message *m, sd_b if (ferror(i->f)) return -ENOMEM; - r = sd_bus_message_new_method_return(bus, m, &q); + r = sd_bus_message_new_method_return(m, &q); if (r < 0) return r;