mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-12-25 11:22:30 +01:00
Fix from this commit 7a1bd7f649
Revert "Change calls to xmlCharEncInput to set flush false"
This commit broke decoding of larger documents with ICU.
63 lines
2.4 KiB
Diff
63 lines
2.4 KiB
Diff
From 7a1bd7f6497ac33a9023d556f6f47a48f01deac0 Mon Sep 17 00:00:00 2001
|
|
From: Nick Wellnhofer <wellnhofer@aevum.de>
|
|
Date: Sat, 17 Mar 2018 00:03:24 +0100
|
|
Subject: [PATCH] Revert "Change calls to xmlCharEncInput to set flush false"
|
|
|
|
This reverts commit 6e6ae5daa6cd9640c9a83c1070896273e9b30d14 which
|
|
broke decoding of larger documents with ICU.
|
|
|
|
See https://bugs.chromium.org/p/chromium/issues/detail?id=820163
|
|
---
|
|
HTMLparser.c | 2 +-
|
|
parserInternals.c | 2 +-
|
|
xmlIO.c | 4 ++--
|
|
3 files changed, 4 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/HTMLparser.c b/HTMLparser.c
|
|
index 9adeb174..7e243e60 100644
|
|
--- a/HTMLparser.c
|
|
+++ b/HTMLparser.c
|
|
@@ -3635,7 +3635,7 @@ htmlCheckEncodingDirect(htmlParserCtxtPtr ctxt, const xmlChar *encoding) {
|
|
*/
|
|
processed = ctxt->input->cur - ctxt->input->base;
|
|
xmlBufShrink(ctxt->input->buf->buffer, processed);
|
|
- nbchars = xmlCharEncInput(ctxt->input->buf, 0);
|
|
+ nbchars = xmlCharEncInput(ctxt->input->buf, 1);
|
|
if (nbchars < 0) {
|
|
htmlParseErr(ctxt, XML_ERR_INVALID_ENCODING,
|
|
"htmlCheckEncoding: encoder error\n",
|
|
diff --git a/parserInternals.c b/parserInternals.c
|
|
index 8c0cd57a..09876ab4 100644
|
|
--- a/parserInternals.c
|
|
+++ b/parserInternals.c
|
|
@@ -1214,7 +1214,7 @@ xmlSwitchInputEncodingInt(xmlParserCtxtPtr ctxt, xmlParserInputPtr input,
|
|
/*
|
|
* convert as much as possible of the buffer
|
|
*/
|
|
- nbchars = xmlCharEncInput(input->buf, 0);
|
|
+ nbchars = xmlCharEncInput(input->buf, 1);
|
|
} else {
|
|
/*
|
|
* convert just enough to get
|
|
diff --git a/xmlIO.c b/xmlIO.c
|
|
index 82543477..f61dd05a 100644
|
|
--- a/xmlIO.c
|
|
+++ b/xmlIO.c
|
|
@@ -3157,7 +3157,7 @@ xmlParserInputBufferPush(xmlParserInputBufferPtr in,
|
|
* convert as much as possible to the parser reading buffer.
|
|
*/
|
|
use = xmlBufUse(in->raw);
|
|
- nbchars = xmlCharEncInput(in, 0);
|
|
+ nbchars = xmlCharEncInput(in, 1);
|
|
if (nbchars < 0) {
|
|
xmlIOErr(XML_IO_ENCODER, NULL);
|
|
in->error = XML_IO_ENCODER;
|
|
@@ -3273,7 +3273,7 @@ xmlParserInputBufferGrow(xmlParserInputBufferPtr in, int len) {
|
|
* convert as much as possible to the parser reading buffer.
|
|
*/
|
|
use = xmlBufUse(in->raw);
|
|
- nbchars = xmlCharEncInput(in, 0);
|
|
+ nbchars = xmlCharEncInput(in, 1);
|
|
if (nbchars < 0) {
|
|
xmlIOErr(XML_IO_ENCODER, NULL);
|
|
in->error = XML_IO_ENCODER;
|