fixing #75619, related to a problem when trying to evaluate condition when

* xpath.c: fixing #75619, related to a problem when trying
  to evaluate condition when the current node set resulting
  from that sub-step evaluation is empty. Also fixes 2 potential
  problem with previous-sibling and next-siblings axis.
Daniel
This commit is contained in:
Daniel Veillard 2002-03-21 12:32:59 +00:00
parent 1840ef0827
commit 6fbcf42aa3
2 changed files with 8 additions and 3 deletions

View File

@ -1,3 +1,10 @@
Thu Mar 21 13:30:06 CET 2002 Daniel Veillard <daniel@veillard.com>
* xpath.c: fixing #75619, related to a problem when trying
to evaluate condition when the current node set resulting
from that sub-step evaluation is empty. Also fixes 2 potential
problem with previous-sibling and next-siblings axis.
Thu Mar 21 09:03:59 CET 2002 Daniel Veillard <daniel@veillard.com>
* c14n.c: patch from Mark Vakoc to build C14N if DocBook and

View File

@ -8406,7 +8406,6 @@ xmlXPathNodeCollectAndTest(xmlXPathParserContextPtr ctxt,
#endif
last = NULL;
next = xmlXPathNextFollowingSibling;
mergeNodeSet = xmlXPathNodeSetMergeUnique;
break;
case AXIS_NAMESPACE:
#ifdef DEBUG_STEP
@ -8438,7 +8437,6 @@ xmlXPathNodeCollectAndTest(xmlXPathParserContextPtr ctxt,
#endif
first = NULL;
next = xmlXPathNextPrecedingSibling;
mergeNodeSet = xmlXPathNodeSetMergeUnique;
break;
case AXIS_SELF:
#ifdef DEBUG_STEP
@ -8678,7 +8676,7 @@ xmlXPathNodeCollectAndTest(xmlXPathParserContextPtr ctxt,
/*
* If there is some predicate filtering do it now
*/
if (op->ch2 != -1) {
if ((op->ch2 != -1) && (list != NULL) && (list->nodeNr > 0)) {
xmlXPathObjectPtr obj2;
valuePush(ctxt, xmlXPathWrapNodeSet(list));