summaryrefslogtreecommitdiff
path: root/testSAX.c
diff options
context:
space:
mode:
authorDaniel Veillard <veillard@src.gnome.org>2004-01-23 13:15:13 +0000
committerDaniel Veillard <veillard@src.gnome.org>2004-01-23 13:15:13 +0000
commit4773df2a58be83e1b9b1b55840371acf37386820 (patch)
treece137762c538aa4b931cc42676df51d4b70cd766 /testSAX.c
parente9f0811a2fab2491383c6d78800ab07a0b4f8336 (diff)
downloadlibxml2-4773df2a58be83e1b9b1b55840371acf37386820.tar.gz
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
Diffstat (limited to 'testSAX.c')
-rw-r--r--testSAX.c18
1 files changed, 17 insertions, 1 deletions
diff --git a/testSAX.c b/testSAX.c
index b8db61b2..4f00c53e 100644
--- a/testSAX.c
+++ b/testSAX.c
@@ -49,6 +49,7 @@ static int noent = 0;
static int quiet = 0;
static int nonull = 0;
static int sax2 = 0;
+static int repeat = 0;
static int callbacks = 0;
xmlSAXHandler emptySAXHandlerStruct = {
@@ -913,6 +914,17 @@ parseAndPrintFile(char *filename) {
* Debug callback
*/
callbacks = 0;
+ if (repeat) {
+ int i;
+ for (i = 0;i < 99;i++) {
+ if (sax2)
+ res = xmlSAXUserParseFile(debugSAX2Handler, NULL,
+ filename);
+ else
+ res = xmlSAXUserParseFile(debugSAXHandler, NULL,
+ filename);
+ }
+ }
if (sax2)
res = xmlSAXUserParseFile(debugSAX2Handler, NULL, filename);
else
@@ -956,7 +968,11 @@ int main(int argc, char **argv) {
else if ((!strcmp(argv[i], "-speed")) ||
(!strcmp(argv[i], "--speed")))
speed++;
- else if ((!strcmp(argv[i], "-noent")) ||
+ else if ((!strcmp(argv[i], "-repeat")) ||
+ (!strcmp(argv[i], "--repeat"))) {
+ repeat++;
+ quiet++;
+ } else if ((!strcmp(argv[i], "-noent")) ||
(!strcmp(argv[i], "--noent")))
noent++;
else if ((!strcmp(argv[i], "-quiet")) ||