diff --git a/legacy/edbus/src/lib/edbus_service.c b/legacy/edbus/src/lib/edbus_service.c index 6b12472591..88861b6499 100644 --- a/legacy/edbus/src/lib/edbus_service.c +++ b/legacy/edbus/src/lib/edbus_service.c @@ -71,7 +71,16 @@ _introspect_append_signal(Eina_Strbuf *buf, const EDBus_Signal *sig) int i; const char *part, *name; - eina_strbuf_append_printf(buf, "", sig->name); + eina_strbuf_append_printf(buf, "name); + + if (!sig->flags && !(sig->args && sig->args->signature)) + { + eina_strbuf_append(buf, " />"); + return; + } + + eina_strbuf_append(buf, ">"); + if (sig->flags & EDBUS_SIGNAL_FLAG_DEPRECATED) eina_strbuf_append(buf, DBUS_ANNOTATION_DEPRECATED); @@ -94,10 +103,19 @@ _instrospect_append_property(Eina_Strbuf *buf, const EDBus_Property *prop, const { eina_strbuf_append_printf(buf, "name, prop->type); + if (iface->get_func || prop->get_func) eina_strbuf_append(buf, "read"); + if (iface->set_func || prop->set_func) eina_strbuf_append(buf, "write"); + + if (!prop->flags) + { + eina_strbuf_append(buf, "\" />"); + return; + } + eina_strbuf_append(buf, "\">"); if (prop->flags & EDBUS_PROPERTY_FLAG_DEPRECATED)