153aa9179Sopenharmony_ciFrom 9feafbc5c5cce13852062a527d719ecce6b54661 Mon Sep 17 00:00:00 2001 253aa9179Sopenharmony_ciFrom: Nick Wellnhofer <wellnhofer@aevum.de> 353aa9179Sopenharmony_ciDate: Sun, 13 Nov 2022 16:56:10 +0100 453aa9179Sopenharmony_ciSubject: [PATCH] io: Check for memory buffer early in xmlParserInputGrow 553aa9179Sopenharmony_ci 653aa9179Sopenharmony_ciReference:https://github.com/GNOME/libxml2/commit/9feafbc5c5cce13852062a527d719ecce6b54661 753aa9179Sopenharmony_ciConflict:NA 853aa9179Sopenharmony_ci--- 953aa9179Sopenharmony_ci parserInternals.c | 8 ++++---- 1053aa9179Sopenharmony_ci 1 file changed, 4 insertions(+), 4 deletions(-) 1153aa9179Sopenharmony_ci 1253aa9179Sopenharmony_cidiff --git a/parserInternals.c b/parserInternals.c 1353aa9179Sopenharmony_ciindex b8eab4b..0ef44fe 100644 1453aa9179Sopenharmony_ci--- a/parserInternals.c 1553aa9179Sopenharmony_ci+++ b/parserInternals.c 1653aa9179Sopenharmony_ci@@ -310,6 +310,9 @@ xmlParserInputGrow(xmlParserInputPtr in, int len) { 1753aa9179Sopenharmony_ci if (in->cur == NULL) return(-1); 1853aa9179Sopenharmony_ci if (in->buf->buffer == NULL) return(-1); 1953aa9179Sopenharmony_ci 2053aa9179Sopenharmony_ci+ /* Don't grow memory buffers. */ 2153aa9179Sopenharmony_ci+ if (in->buf->readcallback == NULL) return(0); 2253aa9179Sopenharmony_ci+ 2353aa9179Sopenharmony_ci CHECK_BUFFER(in); 2453aa9179Sopenharmony_ci 2553aa9179Sopenharmony_ci indx = in->cur - in->base; 2653aa9179Sopenharmony_ci@@ -319,10 +322,7 @@ xmlParserInputGrow(xmlParserInputPtr in, int len) { 2753aa9179Sopenharmony_ci 2853aa9179Sopenharmony_ci return(0); 2953aa9179Sopenharmony_ci } 3053aa9179Sopenharmony_ci- if (in->buf->readcallback != NULL) { 3153aa9179Sopenharmony_ci- ret = xmlParserInputBufferGrow(in->buf, len); 3253aa9179Sopenharmony_ci- } else 3353aa9179Sopenharmony_ci- return(0); 3453aa9179Sopenharmony_ci+ ret = xmlParserInputBufferGrow(in->buf, len); 3553aa9179Sopenharmony_ci 3653aa9179Sopenharmony_ci in->base = xmlBufContent(in->buf->buffer); 3753aa9179Sopenharmony_ci in->cur = in->base + indx; 3853aa9179Sopenharmony_ci-- 3953aa9179Sopenharmony_ci2.27.0 4053aa9179Sopenharmony_ci 41