fixed xmlIOParseDTD handling of @input in error case, Should fix #335085
* parser.c: fixed xmlIOParseDTD handling of @input in error case,
Should fix #335085
* testapi.c: reset the http_proxy env variable to not waste time
on regression tests
Daniel
diff --git a/parser.c b/parser.c
index ea95712..a79e27a 100644
--- a/parser.c
+++ b/parser.c
@@ -10827,7 +10827,7 @@
* Load and parse a DTD
*
* Returns the resulting xmlDtdPtr or NULL in case of error.
- * @input will be freed at parsing end.
+ * @input will be freed by the function in any case.
*/
xmlDtdPtr
@@ -10843,6 +10843,7 @@
ctxt = xmlNewParserCtxt();
if (ctxt == NULL) {
+ xmlFreeParserInputBuffer(input);
return(NULL);
}
@@ -10864,6 +10865,7 @@
pinput = xmlNewIOInputStream(ctxt, input, XML_CHAR_ENCODING_NONE);
if (pinput == NULL) {
if (sax != NULL) ctxt->sax = NULL;
+ xmlFreeParserInputBuffer(input);
xmlFreeParserCtxt(ctxt);
return(NULL);
}