From 6a177a6731e4a0fca089e10c5bc82af28db23b7f Mon Sep 17 00:00:00 2001 From: Rico Tzschichholz Date: Wed, 17 Jun 2020 16:58:56 +0200 Subject: [PATCH] girparser: Actually respect given cprefix metadata for enumerations --- vala/valagirparser.vala | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/vala/valagirparser.vala b/vala/valagirparser.vala index c31c8a344..541ddbeac 100644 --- a/vala/valagirparser.vala +++ b/vala/valagirparser.vala @@ -2373,7 +2373,12 @@ public class Vala.GirParser : CodeVisitor { sym.access = SymbolAccessibility.PUBLIC; - string common_prefix = null; + string? common_prefix = null; + bool explicit_prefix = false; + if (metadata.has_argument (ArgumentType.CPREFIX)) { + sym.set_attribute_string ("CCode", "cprefix", metadata.get_string (ArgumentType.CPREFIX)); + explicit_prefix = true; + } bool has_member = false; next (); @@ -2390,9 +2395,10 @@ public class Vala.GirParser : CodeVisitor { has_member = true; if (error_domain) { parse_error_member (); - calculate_common_prefix (ref common_prefix, old_current.get_cname ()); } else { parse_enumeration_member (); + } + if (!explicit_prefix) { calculate_common_prefix (ref common_prefix, old_current.get_cname ()); } } else if (reader.name == "function") { -- 2.47.2