1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2025-08-01 10:06:59 +03:00

Alexey Efimov pointed out that concat('a', 'b', ) should raise a syntax

* xpath.c: Alexey Efimov pointed out that concat('a', 'b', )
  should raise a syntax error
Daniel
This commit is contained in:
Daniel Veillard
2003-01-14 16:07:16 +00:00
parent e4a07e7b77
commit 71f9d7310c
2 changed files with 19 additions and 12 deletions

26
xpath.c
View File

@ -7617,19 +7617,21 @@ xmlXPathCompFunctionCall(xmlXPathParserContextPtr ctxt) {
SKIP_BLANKS;
ctxt->comp->last = -1;
while (CUR != ')') {
int op1 = ctxt->comp->last;
ctxt->comp->last = -1;
xmlXPathCompileExpr(ctxt);
CHECK_ERROR;
PUSH_BINARY_EXPR(XPATH_OP_ARG, op1, ctxt->comp->last, 0, 0);
nbargs++;
if (CUR == ')') break;
if (CUR != ',') {
XP_ERROR(XPATH_EXPR_ERROR);
if (CUR != ')') {
while (CUR != 0) {
int op1 = ctxt->comp->last;
ctxt->comp->last = -1;
xmlXPathCompileExpr(ctxt);
CHECK_ERROR;
PUSH_BINARY_EXPR(XPATH_OP_ARG, op1, ctxt->comp->last, 0, 0);
nbargs++;
if (CUR == ')') break;
if (CUR != ',') {
XP_ERROR(XPATH_EXPR_ERROR);
}
NEXT;
SKIP_BLANKS;
}
NEXT;
SKIP_BLANKS;
}
PUSH_LONG_EXPR(XPATH_OP_FUNCTION, nbargs, 0, 0,
name, prefix);