]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
vapigen: fix changing the type_name of an array field via metadata
authorEvan Nemerson <evan@coeus-group.com>
Fri, 5 Mar 2010 21:51:00 +0000 (13:51 -0800)
committerEvan Nemerson <evan@coeus-group.com>
Fri, 5 Mar 2010 21:51:00 +0000 (13:51 -0800)
vapigen/valagidlparser.vala

index e971ac09208d033576313d9f3e5a9f581776f5fb..47e1fea529df5d7b21afbd104d1fbe5999b67f09 100644 (file)
@@ -1995,7 +1995,12 @@ public class Vala.GIdlParser : CodeVisitor {
                                                type.value_owned = true;
                                        }
                                } else if (nv[0] == "type_name") {
-                                       ((UnresolvedType) type).unresolved_symbol = new UnresolvedSymbol (null, eval (nv[1]));
+                                       var unresolved_sym = new UnresolvedSymbol (null, eval (nv[1]));
+                                       if (type is ArrayType) {
+                                               ((UnresolvedType) ((ArrayType) type).element_type).unresolved_symbol = unresolved_sym;
+                                       } else {
+                                               ((UnresolvedType) type).unresolved_symbol = unresolved_sym;
+                                       }
                                } else if (nv[0] == "type_arguments") {
                                        var type_args = eval (nv[1]).split (",");
                                        foreach (string type_arg in type_args) {