From: Rico Tzschichholz Date: Tue, 3 Mar 2020 13:28:12 +0000 (+0100) Subject: girparser: Strip "Enum"-suffix only from enumeration X-Git-Tag: 0.49.1~219 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=66c23e839b63c81ce5da1c0212b22e2c4c6b8c81;p=thirdparty%2Fvala.git girparser: Strip "Enum"-suffix only from enumeration This lead to superfluous symbol clashes when applied widely. e.g. GLib.ParamSpecEnum which is subclass of GLib.ParamSpec Introduced with 37201b0016a6f710dea6c9db08ff351641086686 --- diff --git a/vala/valagirparser.vala b/vala/valagirparser.vala index 88f874d8f..07e70aa34 100644 --- a/vala/valagirparser.vala +++ b/vala/valagirparser.vala @@ -1870,6 +1870,8 @@ public class Vala.GirParser : CodeVisitor { } string? element_get_name (string? gir_name = null) { + unowned string tag = reader.name; + var name = gir_name; if (name == null) { name = reader.get_attribute ("name"); @@ -1893,7 +1895,9 @@ public class Vala.GirParser : CodeVisitor { name = pattern; } } - } else { + } else if (tag == "enumeration") { + // FIXME Stripping "Enum"-suffix is required for error-domains + // Applied to all enumerations to preserve backwards compatibility if (name != null && name.has_suffix ("Enum")) { name = name.substring (0, name.length - "Enum".length); }