153aa9179Sopenharmony_ciFrom d0c3f01e110d54415611c5fa0040cdf4a56053f9 Mon Sep 17 00:00:00 2001
253aa9179Sopenharmony_ciFrom: Nick Wellnhofer <wellnhofer@aevum.de>
353aa9179Sopenharmony_ciDate: Sat, 6 May 2023 17:47:37 +0200
453aa9179Sopenharmony_ciSubject: [PATCH] parser: Fix old SAX1 parser with custom callbacks
553aa9179Sopenharmony_ci
653aa9179Sopenharmony_ciFor some reason, xmlCtxtUseOptionsInternal set the start and end element
753aa9179Sopenharmony_ciSAX handlers to the internal DOM builder functions when XML_PARSE_SAX1
853aa9179Sopenharmony_ciwas specified. This means that custom SAX handlers could never work with
953aa9179Sopenharmony_cithat flag because these functions would receive the wrong user data
1053aa9179Sopenharmony_ciargument and crash immediately.
1153aa9179Sopenharmony_ci
1253aa9179Sopenharmony_ciFixes #535.
1353aa9179Sopenharmony_ci
1453aa9179Sopenharmony_ciReference:https://github.com/GNOME/libxml2/commit/d0c3f01e110d54415611c5fa0040cdf4a56053f9
1553aa9179Sopenharmony_ciConflict:NA
1653aa9179Sopenharmony_ci
1753aa9179Sopenharmony_ci---
1853aa9179Sopenharmony_ci parser.c | 2 --
1953aa9179Sopenharmony_ci 1 file changed, 2 deletions(-)
2053aa9179Sopenharmony_ci
2153aa9179Sopenharmony_cidiff --git a/parser.c b/parser.c
2253aa9179Sopenharmony_ciindex 94a6298..f9b4012 100644
2353aa9179Sopenharmony_ci--- a/parser.c
2453aa9179Sopenharmony_ci+++ b/parser.c
2553aa9179Sopenharmony_ci@@ -15074,8 +15074,6 @@ xmlCtxtUseOptionsInternal(xmlParserCtxtPtr ctxt, int options, const char *encodi
2653aa9179Sopenharmony_ci     }
2753aa9179Sopenharmony_ci #ifdef LIBXML_SAX1_ENABLED
2853aa9179Sopenharmony_ci     if (options & XML_PARSE_SAX1) {
2953aa9179Sopenharmony_ci-        ctxt->sax->startElement = xmlSAX2StartElement;
3053aa9179Sopenharmony_ci-        ctxt->sax->endElement = xmlSAX2EndElement;
3153aa9179Sopenharmony_ci         ctxt->sax->startElementNs = NULL;
3253aa9179Sopenharmony_ci         ctxt->sax->endElementNs = NULL;
3353aa9179Sopenharmony_ci         ctxt->sax->initialized = 1;
3453aa9179Sopenharmony_ci-- 
3553aa9179Sopenharmony_ci2.27.0
3653aa9179Sopenharmony_ci
37