From bc0497ea0c5ac65abc3658a31c95f9b0e15680f3 Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Wed, 13 Apr 2011 19:00:23 +0100 Subject: [PATCH 1/2] dbus_g_proxy_add_signal: stop falsely claiming that we read introspection If we believed the introspection, services could change their introspection and remote-crash us, so it's good that we don't. We shouldn't claim that we do, though. The second sentence is subtle: for D-Bus types that dbus-glib can map into more than one GLib type, you must currently use the one that dbus-glib would "naturally" produce. The only example I can find is that object paths must be DBUS_TYPE_G_OBJECT_PATH, even though dbus-glib can also (in principle) unmarshal object-paths as DBUS_TYPE_G_PROXY. Bug: https://bugs.freedesktop.org/show_bug.cgi?id=36216 --- dbus/dbus-gproxy.c | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/dbus/dbus-gproxy.c b/dbus/dbus-gproxy.c index 13a0cb6..664ff9c 100644 --- a/dbus/dbus-gproxy.c +++ b/dbus/dbus-gproxy.c @@ -2824,9 +2824,9 @@ array_free_all (gpointer array) * @signal_name: the name of the signal * @first_type: the first argument type, or G_TYPE_INVALID if none * - * Specifies the argument signature of a signal;.only necessary - * if the remote object does not support introspection. The arguments - * specified are the GLib types expected. + * Specifies the argument signature of a D-Bus signal. When the signal is + * emitted by the remote object, if the GTypes corresponding to its arguments' + * types do not match the types given here, the signal will be ignored. */ void dbus_g_proxy_add_signal (DBusGProxy *proxy, -- 1.7.4.1