libxml2: fix compilation of explicit child axis in pattern

This was reported as sucurity fix in
https://gitlab.gnome.org/GNOME/libxml2/-/releases/v2.12.10
https://gitlab.gnome.org/GNOME/libxml2/-/releases/v2.13.6

(From OE-Core rev: 0dc99e25c16a1e74aa80ca20132609990bb9dff7)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
This commit is contained in:
Peter Marko
2025-02-19 21:17:14 +01:00
committed by Steve Sakoman
parent a2f2b93129
commit 533c0f62e1
2 changed files with 32 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
From 503f788e84f1c1f1d769c2c7258d77faee94b5a3 Mon Sep 17 00:00:00 2001
From: Nick Wellnhofer <wellnhofer@aevum.de>
Date: Thu, 13 Feb 2025 16:48:53 +0100
Subject: [PATCH] pattern: Fix compilation of explicit child axis
The child axis is the default axis and should generate XML_OP_ELEM like
the case without an axis.
Upstream-Status: Backport [https://gitlab.gnome.org/GNOME/libxml2/-/commit/503f788e84f1c1f1d769c2c7258d77faee94b5a3]
Signed-off-by: Peter Marko <peter.marko@siemens.com>
---
pattern.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/pattern.c b/pattern.c
index 27e96946..3182794e 100644
--- a/pattern.c
+++ b/pattern.c
@@ -1178,10 +1178,10 @@ xmlCompileStepPattern(xmlPatParserContextPtr ctxt) {
goto error;
}
} else {
- PUSH(XML_OP_CHILD, token, URL);
+ PUSH(XML_OP_ELEM, token, URL);
}
} else
- PUSH(XML_OP_CHILD, name, NULL);
+ PUSH(XML_OP_ELEM, name, NULL);
return;
} else if (xmlStrEqual(name, (const xmlChar *) "attribute")) {
XML_PAT_FREE_STRING(ctxt, name)

View File

@@ -34,6 +34,7 @@ SRC_URI += "http://www.w3.org/XML/Test/xmlts20080827.tar;subdir=${BP};name=testt
file://CVE-2024-25062.patch \
file://CVE-2024-34459.patch \
file://CVE-2022-49043.patch \
file://0001-pattern-Fix-compilation-of-explicit-child-axis.patch \
"
SRC_URI[archive.sha256sum] = "60d74a257d1ccec0475e749cba2f21559e48139efba6ff28224357c7c798dfee"