added io1.c an example ox xmlIO usage and io1.res test result, fixed a
* doc/examples/*: added io1.c an example ox xmlIO usage and io1.res
test result, fixed a awful lot of memory leaks showing up in
testWriter.c, changed the examples and the Makefiles to test
memory leaks.
* xmlwriter.c: fixed a memory leak
* Makefile.am: run the doc/examples regression tests as part of
make tests
* xpath.c include/libxml/xpath.h: added xmlXPathCtxtCompile() to
compile an XPath expression within a context, currently the goal
is to be able to reuse the XSLT stylesheet dictionnary, but this
opens the door to others possible optimizations.
* dict.c include/libxml/dict.h: added xmlDictCreateSub() which allows
to build a new dictionnary based on another read-only dictionnary.
This is needed for XSLT to keep the stylesheet dictionnary read-only
while being able to reuse the strings for the transformation
dictionnary.
* xinclude.c: fixed a dictionnar reference counting problem occuring
when document parsing failed.
* testSAX.c: adding option --repeat for timing 100times the parsing
* doc/* : rebuilt all the docs
Daniel
diff --git a/xmlwriter.c b/xmlwriter.c
index 720c20d..3cda897 100644
--- a/xmlwriter.c
+++ b/xmlwriter.c
@@ -379,6 +379,8 @@
if (writer->ctxt != NULL)
xmlFreeParserCtxt(writer->ctxt);
+ if (writer->ichar != NULL)
+ xmlFree(writer->ichar);
xmlFree(writer);
}
@@ -4035,6 +4037,8 @@
if (!str)
return -1;
+ if (writer->ichar != NULL)
+ xmlFree(writer->ichar);
writer->ichar = xmlStrdup (str);
if (!writer->ichar)