made one of the changes suggested by Brian Krahmer allow to pass '--' on
* debugXML.c: made one of the changes suggested by Brian Krahmer
* testRegexp.c: allow to pass '--' on the command line to allow
regexps starting with the character '-'
Daniel
svn path=/trunk/; revision=3697
diff --git a/ChangeLog b/ChangeLog
index 41d21c9..ab2ad16 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu Feb 21 22:46:08 CET 2008 Daniel Veillard <daniel@veillard.com>
+
+ * debugXML.c: made one of the changes suggested by Brian Krahmer
+ * testRegexp.c: allow to pass '--' on the command line to allow
+ regexps starting with the character '-'
+
Tue Feb 19 08:49:32 CET 2008 Daniel Veillard <daniel@veillard.com>
* python/Makefile.am python/tests/Makefile.am: applied cleanup
diff --git a/debugXML.c b/debugXML.c
index 3985ad3..f66f596 100644
--- a/debugXML.c
+++ b/debugXML.c
@@ -3244,6 +3244,7 @@
"Unknown command %s\n", command);
}
free(cmdline); /* not xmlFree here ! */
+ cmdline = NULL;
}
#ifdef LIBXML_XPATH_ENABLED
xmlXPathFreeContext(ctxt->pctxt);
diff --git a/testRegexp.c b/testRegexp.c
index d5228b3..626536e 100644
--- a/testRegexp.c
+++ b/testRegexp.c
@@ -290,6 +290,9 @@
if (argv[i][0] != '-')
continue;
+ if (!strcmp(argv[i], "--"))
+ break;
+
if ((!strcmp(argv[i], "-debug")) || (!strcmp(argv[i], "--debug"))) {
debug++;
} else if ((!strcmp(argv[i], "-repeat")) ||
@@ -322,10 +325,15 @@
#endif
testRegexpFile(filename);
} else {
+ int data = 0;
#ifdef LIBXML_EXPR_ENABLED
+
if (use_exp) {
for (i = 1; i < argc ; i++) {
- if ((argv[i][0] != '-') || (strcmp(argv[i], "-") == 0)) {
+ if (strcmp(argv[i], "--") == 0)
+ data = 1;
+ else if ((argv[i][0] != '-') || (strcmp(argv[i], "-") == 0) ||
+ (data == 1)) {
if (pattern == NULL) {
pattern = argv[i];
printf("Testing expr %s:\n", pattern);
@@ -342,13 +350,18 @@
}
}
}
- if (expr != NULL)
+ if (expr != NULL) {
xmlExpFree(ctxt, expr);
+ expr = NULL;
+ }
} else
#endif
{
for (i = 1; i < argc ; i++) {
- if ((argv[i][0] != '-') || (strcmp(argv[i], "-") == 0)) {
+ if (strcmp(argv[i], "--") == 0)
+ data = 1;
+ else if ((argv[i][0] != '-') || (strcmp(argv[i], "-") == 0) ||
+ (data == 1)) {
if (pattern == NULL) {
pattern = argv[i];
printf("Testing %s:\n", pattern);