summaryrefslogtreecommitdiffstats
path: root/gdbus/object.c
diff options
context:
space:
mode:
authorLucas De Marchi <lucas.demarchi@profusion.mobi>2012-05-20 02:07:35 -0300
committerMarcel Holtmann <marcel@holtmann.org>2012-05-20 02:47:57 -0700
commite400426267975ce3f8155e71b05bffccfd29826f (patch)
tree5153204603eb104d3632ebffb5892deaa9473ba8 /gdbus/object.c
parente42130a83b49ab8e99a02a8218e478fc851cbce7 (diff)
downloadofono-e400426267975ce3f8155e71b05bffccfd29826f.tar.bz2
gdbus: add Method.NoReply annotation in introspection
Diffstat (limited to 'gdbus/object.c')
-rw-r--r--gdbus/object.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gdbus/object.c b/gdbus/object.c
index 95947f36..dacbe587 100644
--- a/gdbus/object.c
+++ b/gdbus/object.c
@@ -84,8 +84,10 @@ static void generate_interface_xml(GString *gstr, struct interface_data *iface)
for (method = iface->methods; method && method->name; method++) {
gboolean deprecated = method->flags &
G_DBUS_METHOD_FLAG_DEPRECATED;
+ gboolean noreply = method->flags &
+ G_DBUS_METHOD_FLAG_NOREPLY;
- if (!deprecated &&
+ if (!deprecated && !noreply &&
!(method->in_args && method->in_args->name) &&
!(method->out_args && method->out_args->name))
g_string_append_printf(gstr, "\t\t<method name=\"%s\"/>\n",
@@ -99,6 +101,9 @@ static void generate_interface_xml(GString *gstr, struct interface_data *iface)
if (deprecated)
g_string_append_printf(gstr, "\t\t\t<annotation name=\"org.freedesktop.DBus.Deprecated\" value=\"true\"/>\n");
+ if (noreply)
+ g_string_append_printf(gstr, "\t\t\t<annotation name=\"org.freedesktop.DBus.Method.NoReply\" value=\"true\"/>\n");
+
g_string_append_printf(gstr, "\t\t</method>\n");
}
}