diff --git a/0001-Parse-a-field-s-enum-correctly.patch b/0001-Parse-a-field-s-enum-correctly.patch new file mode 100644 index 0000000000000000000000000000000000000000..9aed5062529d2403af754b31b1e45fa43906c7d7 --- /dev/null +++ b/0001-Parse-a-field-s-enum-correctly.patch @@ -0,0 +1,49 @@ +From 2b3559c10c18eb63e61efdc8a030765d624a0fba Mon Sep 17 00:00:00 2001 +From: Uli Schlachter +Date: Sat, 21 Mar 2020 11:12:52 +0100 +Subject: [PATCH] Parse a field's "enum=" correctly + +In xv.xml, there is something like this: + + + [...] + + + + 16 + + [...] + + +When parsing this, the Field instance for "guid" ended up with .enum == +"ImageOrder". This is because the loop that parses complex type did not +unset a variable across iterations, meaning that the last "enum" +property "stuck" and was also used for all following fields. + +Fix this by simply moving the initialisation of the "enum" variable +inside of the loop. + +Signed-off-by: Uli Schlachter +--- + xcbgen/xtypes.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/xcbgen/xtypes.py b/xcbgen/xtypes.py +index 3afc812..e47189d 100644 +--- a/xcbgen/xtypes.py ++++ b/xcbgen/xtypes.py +@@ -528,10 +528,10 @@ class ComplexType(Type): + def resolve(self, module): + if self.resolved: + return +- enum = None + + # Resolve all of our field datatypes. + for child in list(self.elt): ++ enum = None + if child.tag == 'pad': + field_name = 'pad' + str(module.pads) + fkey = 'CARD8' +-- +2.39.0.windows.2 + diff --git a/xcb-proto.spec b/xcb-proto.spec index b4c16126e5661174620cfbbc1ba48920797505e5..5a3cecff9cc709cd15faa961d11fe9cb146d7a8a 100644 --- a/xcb-proto.spec +++ b/xcb-proto.spec @@ -1,11 +1,12 @@ %define debug_package %{nil} Name: xcb-proto Version: 1.14 -Release: 2 +Release: 3 Summary: XCB protocol descriptions License: MIT URL: https://gitlab.freedesktop.org/xorg/proto/xcbproto/ Source0: https://xcb.freedesktop.org/dist/%{name}-%{version}.tar.gz +Patch01: 0001-Parse-a-field-s-enum-correctly.patch BuildArch: noarch BuildRequires: python3-devel @@ -36,6 +37,9 @@ export PYTHON="python3" %{python3_sitelib}/xcbgen %changelog +* Thu Oct 12 2023 zhangliangpengkun - 1.14-3 +- Parse a field's "enum=" correctly + * Fri Jan 6 2023 yangbo - 1.14-2 - Type:bugfix - CVE:NA