Files
hammer/recipes/CVE-2026-6732.patch
sergioandClaude Opus 4.8 30ad3e57bf Etapa G: libs C base pcre2 + libxml2 al corpus (223→225)
Track de libs fundacionales (pivote tras gmp). Ambas static-musl, gcc:
- pcre2 10.47 → libpcre2-8.a + libpcre2-posix.a (regex; dep de pcre2-sys, grep-variants)
- libxml2 2.13.9 → libxml2.a (XML/HTML; dep de mucha cola C + crates -sys)

FIX CLAVE de comportamiento del lab (causa de los fallos previos, gmp incluido):
el lab tiene fases configure Y compile SEPARADAS; si configure se deja vacío, la
heurística inyecta su propio ./configure minimal (defaults → python/probe) que
corre ANTES y aborta. Solución: definir [build.phases].configure explícito.
libxml2 con --without-python/lzma/zlib; configure-phase split lo desbloqueó.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-24 08:39:54 -04:00

33 lines
1.5 KiB
Diff

diff --git a/parser.c b/parser.c
index 6e7621a86b5b9256b7a068f09a7e1650e7264aa5..85bc39b1c2739574ab90fde34a24459e5ef9928f 100644
--- a/parser.c
+++ b/parser.c
@@ -7261,10 +7261,10 @@ xmlParseReference(xmlParserCtxt *ctxt) {
if ((cur->type == XML_TEXT_NODE) ||
(ctxt->options & XML_PARSE_NOCDATA)) {
if (ctxt->sax->characters != NULL)
- ctxt->sax->characters(ctxt, cur->content, len);
+ ctxt->sax->characters(ctxt->userData, cur->content, len);
} else {
if (ctxt->sax->cdataBlock != NULL)
- ctxt->sax->cdataBlock(ctxt, cur->content, len);
+ ctxt->sax->cdataBlock(ctxt->userData, cur->content, len);
}
cur = cur->next;
@@ -7284,10 +7284,12 @@ xmlParseReference(xmlParserCtxt *ctxt) {
if ((cur->type == XML_TEXT_NODE) ||
(ctxt->options & XML_PARSE_NOCDATA)) {
if (ctxt->sax->characters != NULL)
- ctxt->sax->characters(ctxt, cur->content, len);
+ ctxt->sax->characters(ctxt->userData, cur->content,
+ len);
} else {
if (ctxt->sax->cdataBlock != NULL)
- ctxt->sax->cdataBlock(ctxt, cur->content, len);
+ ctxt->sax->cdataBlock(ctxt->userData, cur->content,
+ len);
}
break;