previous fix for #124044 was broken, correct fix provided. fix

* python/libxml.c: previous fix for #124044 was broken, correct
  fix provided.
* HTMLparser.c parser.c parserInternals.c xmlIO.c: fix xmlStopParser()
  and the error handlers to address #125877
Daniel
diff --git a/parserInternals.c b/parserInternals.c
index 7d18788..67fbd63 100644
--- a/parserInternals.c
+++ b/parserInternals.c
@@ -105,6 +105,9 @@
 void
 xmlErrMemory(xmlParserCtxtPtr ctxt, const char *extra)
 {
+    if ((ctxt != NULL) && (ctxt->disableSAX != 0) &&
+        (ctxt->instate == XML_PARSER_EOF))
+	return;
     if (ctxt != NULL) {
         ctxt->errNo = XML_ERR_NO_MEMORY;
         ctxt->instate = XML_PARSER_EOF;
@@ -135,6 +138,9 @@
 __xmlErrEncoding(xmlParserCtxtPtr ctxt, xmlParserErrors error,
                  const char *msg, const xmlChar * str1, const xmlChar * str2)
 {
+    if ((ctxt != NULL) && (ctxt->disableSAX != 0) &&
+        (ctxt->instate == XML_PARSER_EOF))
+	return;
     if (ctxt != NULL)
         ctxt->errNo = error;
     __xmlRaiseError(NULL, NULL, NULL,
@@ -159,6 +165,9 @@
 static void
 xmlErrInternal(xmlParserCtxtPtr ctxt, const char *msg, const xmlChar * str)
 {
+    if ((ctxt != NULL) && (ctxt->disableSAX != 0) &&
+        (ctxt->instate == XML_PARSER_EOF))
+	return;
     if (ctxt != NULL)
         ctxt->errNo = XML_ERR_INTERNAL_ERROR;
     __xmlRaiseError(NULL, NULL, NULL,
@@ -185,6 +194,9 @@
 xmlErrEncodingInt(xmlParserCtxtPtr ctxt, xmlParserErrors error,
                   const char *msg, int val)
 {
+    if ((ctxt != NULL) && (ctxt->disableSAX != 0) &&
+        (ctxt->instate == XML_PARSER_EOF))
+	return;
     if (ctxt != NULL)
         ctxt->errNo = error;
     __xmlRaiseError(NULL, NULL, NULL,