1From 71e81a4ce7946c43ca61124b142d86066590aeb0 Mon Sep 17 00:00:00 2001
2From: Nick Wellnhofer <wellnhofer@aevum.de>
3Date: Wed, 2 Nov 2022 16:02:39 +0100
4Subject: [PATCH 08/28] malloc-fail: Fix infinite loop in xmlSkipBlankChars
5
6Found with libFuzzer, see #344.
7
8Reference: https://github.com/GNOME/libxml2/commit/e129c1d1a27abdeaab44f4d59eb0cb5052df7c6f
9Conflict: NA
10---
11 parser.c | 2 +-
12 1 file changed, 1 insertion(+), 1 deletion(-)
13
14diff --git a/parser.c b/parser.c
15index 443a216..780a8b3 100644
16--- a/parser.c
17+++ b/parser.c
18@@ -2220,7 +2220,7 @@ xmlSkipBlankChars(xmlParserCtxtPtr ctxt) {
19     } else {
20         int expandPE = ((ctxt->external != 0) || (ctxt->inputNr != 1));
21 
22-	while (1) {
23+	while (ctxt->instate != XML_PARSER_EOF) {
24             if (IS_BLANK_CH(CUR)) { /* CHECKED tstblanks.xml */
25 		NEXT;
26 	    } else if (CUR == '%') {
27-- 
282.27.0
29
30