]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
girparser: Reuse populated Node.gtype_struct_for instead of resolving again
authorRico Tzschichholz <ricotz@ubuntu.com>
Wed, 3 Mar 2021 09:05:00 +0000 (10:05 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Wed, 3 Mar 2021 09:05:00 +0000 (10:05 +0100)
This fixes the discovery of non-default type_cname for re-parented symbols.

vala/valagirparser.vala

index 836d2436f5455bc56eea29a0e4e4b86f13b977d3..02e9bbc68c11da60729b49ecf4605d8d391971bb 100644 (file)
@@ -1213,9 +1213,8 @@ public class Vala.GirParser : CodeVisitor {
                                                merged = true;
                                        } else {
                                                // record for a gtype
-                                               var gtype_struct_for = girdata["glib:is-gtype-struct-for"];
                                                if (gtype_struct_for != null) {
-                                                       var obj = parser.resolve_node (parent, parser.parse_symbol_from_string (gtype_struct_for, source_reference));
+                                                       var obj = parser.resolve_node (parent, gtype_struct_for);
                                                        if (obj != null && obj.symbol is Interface && "%sIface".printf (obj.get_cname ()) != get_cname ()) {
                                                                // set the interface struct name
                                                                obj.symbol.set_attribute_string ("CCode", "type_cname", get_cname ());