sboag 00/12/08 19:50:46
Modified: java/src/org/apache/xpath/axes ReverseAxesWalker.java
Log:
Put defensive code in for negative predicate index.
Revision Changes Path
1.4 +6 -1
xml-xalan/java/src/org/apache/xpath/axes/ReverseAxesWalker.java
Index: ReverseAxesWalker.java
===================================================================
RCS file:
/home/cvs/xml-xalan/java/src/org/apache/xpath/axes/ReverseAxesWalker.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ReverseAxesWalker.java 2000/11/13 16:27:30 1.3
+++ ReverseAxesWalker.java 2000/12/09 03:50:46 1.4
@@ -119,7 +119,12 @@
*/
protected int getProximityPosition(int predicateIndex)
{
-
+ // A negative predicate index seems to occur with
+ //
(preceding-sibling::*|following-sibling::*)/ancestor::*[position()]/*[position()]
+ // -sb
+ if(predicateIndex < 0)
+ return -1;
+
if (m_proximityPositions[predicateIndex] <= 0)
{
AxesWalker savedWalker = m_lpi.getLastUsedWalker();