[glib] GDBus: Use specific variant type in GetAll()



commit 763c1dab1f2c92526330425d77211b704668a3a3
Author: David Zeuthen <davidz redhat com>
Date:   Fri May 14 21:08:01 2010 -0400

    GDBus: Use specific variant type in GetAll()
    
    Without this fix, we segfault if the exported object returned an error
    on all get_property() calls (in reality, this never happens).
    
    Signed-off-by: David Zeuthen <davidz redhat com>

 gio/gdbusconnection.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
---
diff --git a/gio/gdbusconnection.c b/gio/gdbusconnection.c
index 3c0051a..913c409 100644
--- a/gio/gdbusconnection.c
+++ b/gio/gdbusconnection.c
@@ -3393,7 +3393,7 @@ invoke_get_all_properties_in_idle_cb (gpointer _data)
    *       We could fail the whole call if just a single get_property() call
    *       returns an error. We need clarification in the D-Bus spec about this.
    */
-  builder = g_variant_builder_new (G_VARIANT_TYPE_ARRAY);
+  builder = g_variant_builder_new (G_VARIANT_TYPE ("a{sv}"));
   for (n = 0; data->interface_info->properties != NULL && data->interface_info->properties[n] != NULL; n++)
     {
       const GDBusPropertyInfo *property_info = data->interface_info->properties[n];



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]