fixes bug #57652 reported by Morus Walter Daniel

* parser.c: fixes bug #57652 reported by Morus Walter
Daniel
diff --git a/parser.c b/parser.c
index e3261be..eb94eb9 100644
--- a/parser.c
+++ b/parser.c
@@ -4898,7 +4898,7 @@
     ctxt->external = 1;
     while (((RAW == '<') && (NXT(1) == '?')) ||
            ((RAW == '<') && (NXT(1) == '!')) ||
-           IS_BLANK(CUR)) {
+	   (RAW == '%') || IS_BLANK(CUR)) {
 	const xmlChar *check = CUR_PTR;
 	int cons = ctxt->input->consumed;
 	int tok = ctxt->token;