fixed problem regarding freeing of dictionary when there are errors within
* xinclude.c: fixed problem regarding freeing of dictionary
when there are errors within an XInclude file (bug 133106).
Thanks to Oleg Paraschenko for the assistance.
diff --git a/xinclude.c b/xinclude.c
index 56f7350..607a8f8 100644
--- a/xinclude.c
+++ b/xinclude.c
@@ -458,6 +458,9 @@
if ((ctxt->doc != NULL) && (ctxt->doc->dict != NULL) &&
(pctxt->myDoc->dict == ctxt->doc->dict))
xmlDictReference(ctxt->doc->dict);
+ else if ((pctxt->dict != NULL) &&
+ (pctxt->dict == pctxt->myDoc->dict))
+ xmlDictReference(pctxt->dict);
xmlFreeDoc(pctxt->myDoc);
}
pctxt->myDoc = NULL;