diff -dupr a/parser.c b/parser.c --- a/parser.c 2016-05-23 00:25:25.000000000 -0700 +++ b/parser.c 2017-08-09 16:30:55.562343926 -0700 @@ -12714,6 +12714,10 @@ xmlHaltParser(xmlParserCtxtPtr ctxt) { } ctxt->input->cur = BAD_CAST""; ctxt->input->base = ctxt->input->cur; + if (ctxt->input->buf) { + xmlBufEmpty (ctxt->input->buf->buffer); + } else + ctxt->input->length = 0; } }