summaryrefslogtreecommitdiff
path: root/dev-libs/libxml2/files/libxml2-2.11.2-0004-huge-push.patch
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libxml2/files/libxml2-2.11.2-0004-huge-push.patch')
-rw-r--r--dev-libs/libxml2/files/libxml2-2.11.2-0004-huge-push.patch27
1 files changed, 27 insertions, 0 deletions
diff --git a/dev-libs/libxml2/files/libxml2-2.11.2-0004-huge-push.patch b/dev-libs/libxml2/files/libxml2-2.11.2-0004-huge-push.patch
new file mode 100644
index 000000000000..5f3d06038271
--- /dev/null
+++ b/dev-libs/libxml2/files/libxml2-2.11.2-0004-huge-push.patch
@@ -0,0 +1,27 @@
+https://gitlab.gnome.org/GNOME/libxml2/-/commit/7c14859d0779797a93ea75744266425028599944
+
+From 7c14859d0779797a93ea75744266425028599944 Mon Sep 17 00:00:00 2001
+From: Nick Wellnhofer <wellnhofer@aevum.de>
+Date: Tue, 9 May 2023 13:28:06 +0200
+Subject: [PATCH] parser: Fix "huge input lookup" error with push parser
+
+Fix parsing of larger documents without XML_PARSE_HUGE.
+
+Should fix #538.
+--- a/parserInternals.c
++++ b/parserInternals.c
+@@ -418,9 +418,10 @@ xmlParserShrink(xmlParserCtxtPtr ctxt) {
+ xmlParserInputBufferPtr buf = in->buf;
+ size_t used;
+
+- /* Don't shrink memory buffers. */
++ /* Don't shrink pull parser memory buffers. */
+ if ((buf == NULL) ||
+- ((buf->encoder == NULL) && (buf->readcallback == NULL)))
++ ((ctxt->progressive == 0) &&
++ (buf->encoder == NULL) && (buf->readcallback == NULL)))
+ return;
+
+ used = in->cur - in->base;
+--
+GitLab