33 lines
1.1 KiB
Diff
33 lines
1.1 KiB
Diff
From d0c3f01e110d54415611c5fa0040cdf4a56053f9 Mon Sep 17 00:00:00 2001
|
|
From: Nick Wellnhofer <wellnhofer@aevum.de>
|
|
Date: Sat, 6 May 2023 17:47:37 +0200
|
|
Subject: [PATCH] parser: Fix old SAX1 parser with custom callbacks
|
|
|
|
For some reason, xmlCtxtUseOptionsInternal set the start and end element
|
|
SAX handlers to the internal DOM builder functions when XML_PARSE_SAX1
|
|
was specified. This means that custom SAX handlers could never work with
|
|
that flag because these functions would receive the wrong user data
|
|
argument and crash immediately.
|
|
|
|
Fixes #535.
|
|
---
|
|
parser.c | 2 --
|
|
1 file changed, 2 deletions(-)
|
|
|
|
diff --git a/parser.c b/parser.c
|
|
index bb05791d3..0c8bed129 100644
|
|
--- a/parser.c
|
|
+++ b/parser.c
|
|
@@ -14479,8 +14479,6 @@ xmlCtxtUseOptionsInternal(xmlParserCtxtPtr ctxt, int options, const char *encodi
|
|
}
|
|
#ifdef LIBXML_SAX1_ENABLED
|
|
if (options & XML_PARSE_SAX1) {
|
|
- ctxt->sax->startElement = xmlSAX2StartElement;
|
|
- ctxt->sax->endElement = xmlSAX2EndElement;
|
|
ctxt->sax->startElementNs = NULL;
|
|
ctxt->sax->endElementNs = NULL;
|
|
ctxt->sax->initialized = 1;
|
|
--
|
|
GitLab
|
|
|