From 3ca28ef718d402bd65cd9f291c67b299f1ef74cf Mon Sep 17 00:00:00 2001 From: David Zeuthen Date: Thu, 13 May 2010 16:57:29 -0400 Subject: [PATCH] GDBus: Update docs for GDBusProxy::g-properties-changed signal Also update the example. See https://bugzilla.gnome.org/show_bug.cgi?id=618559 for more details. Signed-off-by: David Zeuthen --- gio/gdbusproxy.c | 10 +++++----- gio/tests/gdbus-example-watch-proxy.c | 7 +++++-- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/gio/gdbusproxy.c b/gio/gdbusproxy.c index bf0e2d1..07b7f8e 100644 --- a/gio/gdbusproxy.c +++ b/gio/gdbusproxy.c @@ -387,13 +387,13 @@ g_dbus_proxy_class_init (GDBusProxyClass *klass) /** * GDBusProxy::g-properties-changed: * @proxy: The #GDBusProxy emitting the signal. - * @changed_properties: A #GVariant containing the properties that - * changed or %NULL if no properties changed. - * @invalidated_properties: A %NULL terminated list of properties that was - * invalidated or %NULL if no properties was invalidated. + * @changed_properties: A #GVariant containing the properties that changed + * @invalidated_properties: A %NULL terminated array of properties that was invalidated * * Emitted when one or more D-Bus properties on @proxy changes. The - * local cache has already been updated when this signal fires. + * local cache has already been updated when this signal fires. Note + * that both @changed_properties and @invalidated_properties are + * guaranteed to never be %NULL (either may be empty though). * * This signal corresponds to the * PropertiesChanged D-Bus signal on the diff --git a/gio/tests/gdbus-example-watch-proxy.c b/gio/tests/gdbus-example-watch-proxy.c index f4796ee..972a66d 100644 --- a/gio/tests/gdbus-example-watch-proxy.c +++ b/gio/tests/gdbus-example-watch-proxy.c @@ -47,8 +47,11 @@ on_properties_changed (GDBusProxy *proxy, const gchar* const *invalidated_properties, gpointer user_data) { + /* Note that we are guaranteed that changed_properties and + * invalidated_properties are never NULL + */ - if (changed_properties != NULL) + if (g_variant_n_children (changed_properties) > 0) { GVariantIter *iter; GVariant *item; @@ -72,7 +75,7 @@ on_properties_changed (GDBusProxy *proxy, } } - if (invalidated_properties != NULL) + if (g_strv_length ((GStrv) invalidated_properties) > 0) { guint n; g_print (" *** Properties Invalidated:\n"); -- 2.7.4