]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
D-Bus: Fix marshalling arrays of structs
authorJürg Billeter <j@bitron.ch>
Sat, 7 Mar 2009 22:32:49 +0000 (23:32 +0100)
committerJürg Billeter <j@bitron.ch>
Sat, 7 Mar 2009 22:32:49 +0000 (23:32 +0100)
gobject/valadbusmodule.vala

index 3a83793d9b0deaa4c92f9edc64858759594eb53a..d6f2b3c999f2cda8fc9996e8bc13caabf96d178f 100644 (file)
@@ -458,9 +458,11 @@ internal class Vala.DBusModule : GAsyncModule {
                if (dim < array_type.rank) {
                        write_array_dim (cforfragment, array_type, dim + 1, new CCodeIdentifier (subiter_name), array_expr, array_iter_expr);
                } else {
-                       var array_iter_incr = new CCodeUnaryExpression (CCodeUnaryOperator.POSTFIX_INCREMENT, array_iter_expr);
-                       var element_expr = new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, array_iter_incr);
+                       var element_expr = new CCodeUnaryExpression (CCodeUnaryOperator.POINTER_INDIRECTION, array_iter_expr);
                        write_expression (cforfragment, array_type.element_type, new CCodeIdentifier (subiter_name), element_expr);
+
+                       var array_iter_incr = new CCodeUnaryExpression (CCodeUnaryOperator.POSTFIX_INCREMENT, array_iter_expr);
+                       cforfragment.append (new CCodeExpressionStatement (array_iter_incr));
                }
                fragment.append (cfor);