diff options
author | Aron Xu <aron@debian.org> | 2012-05-25 04:03:35 +0000 |
---|---|---|
committer | Aron Xu <aron@debian.org> | 2012-05-25 04:03:35 +0000 |
commit | d7372d053bbd1d58216fbb04d1771ffa4cc3e624 (patch) | |
tree | 62b661911406394bbeaca8951d660bb6d8aac0de /xpointer.c | |
parent | 2d1849b271fa8697b88d07ba7d78dc83591e1363 (diff) | |
download | libxml2-upstream/2.8.0+dfsg1.tar.gz |
Imported Upstream version 2.8.0+dfsg1upstream/2.8.0+dfsg1
Diffstat (limited to 'xpointer.c')
-rw-r--r-- | xpointer.c | 16 |
1 files changed, 5 insertions, 11 deletions
@@ -1007,21 +1007,14 @@ xmlXPtrEvalXPtrPart(xmlXPathParserContextPtr ctxt, xmlChar *name) { NEXT; break; } - *cur++ = CUR; } else if (CUR == '(') { level++; - *cur++ = CUR; } else if (CUR == '^') { - NEXT; - if ((CUR == ')') || (CUR == '(') || (CUR == '^')) { - *cur++ = CUR; - } else { - *cur++ = '^'; - *cur++ = CUR; - } - } else { - *cur++ = CUR; + if ((NXT(1) == ')') || (NXT(1) == '(') || (NXT(1) == '^')) { + NEXT; + } } + *cur++ = CUR; NEXT; } *cur = 0; @@ -1269,6 +1262,7 @@ xmlXPtrEvalXPointer(xmlXPathParserContextPtr ctxt) { ctxt->valueNr = 0; ctxt->valueMax = 10; ctxt->value = NULL; + ctxt->valueFrame = 0; } SKIP_BLANKS; if (CUR == '/') { |