struct read support for dbus added by mario-goulart on Tue Feb 28 20:35:58 2012

$ LC_ALL=C svn diff
Index: dbus.scm
===================================================================
--- dbus.scm    (revision 25966)
+++ dbus.scm    (working copy)
@@ -108,6 +108,7 @@
 (define type-signature  (foreign-value DBUS_TYPE_SIGNATURE int))
 (define type-array (foreign-value DBUS_TYPE_ARRAY int))
 (define type-dict-entry  (foreign-value DBUS_TYPE_DICT_ENTRY int))
+(define type-struct  (foreign-value DBUS_TYPE_STRUCT int))
 (define type-dict-begin  (foreign-value DBUS_DICT_ENTRY_BEGIN_CHAR int))
 (define type-dict-end  (foreign-value DBUS_DICT_ENTRY_END_CHAR int))
 (define type-variant (foreign-value DBUS_TYPE_VARIANT int))
@@ -463,7 +464,8 @@
                                                (when (and (vector? v) (eq? 1 (vector-length v)) (unsupported-type? (vector-ref v 0)))
                                                        (set! v (make-vector 0)))
                                                v)]
-                               [(eq? type type-dict-entry)
+                               [(or (eq? type type-dict-entry)
+                                    (eq? type type-struct))
                                        (iter->pair (make-sub-iter iter))]
                                [(eq? type type-variant)
                                        (if (auto-unbox-variants)