You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by sa...@apache.org on 2002/10/29 18:26:21 UTC
cvs commit: xml-xalan/java/src/org/apache/xalan/xsltc/dom DOMImpl.java
santiagopg 2002/10/29 09:26:21
Modified: java/src/org/apache/xalan/xsltc/dom DOMImpl.java
Log:
Fixed problem in DOMImpl$ChildrenIterator.getLast(). It now returns 0
when the nodeset is empty.
Revision Changes Path
1.88 +16 -13 xml-xalan/java/src/org/apache/xalan/xsltc/dom/DOMImpl.java
Index: DOMImpl.java
===================================================================
RCS file: /home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/dom/DOMImpl.java,v
retrieving revision 1.87
retrieving revision 1.88
diff -u -r1.87 -r1.88
--- DOMImpl.java 21 Oct 2002 20:40:31 -0000 1.87
+++ DOMImpl.java 29 Oct 2002 17:26:20 -0000 1.88
@@ -655,14 +655,13 @@
if (node >= _firstAttributeNode) node = NULL;
if (node != _startNode) _last = -1;
_startNode = node;
+
if (_includeSelf) {
_currentChild = -1;
}
else {
- if (hasChildren(node))
- _currentChild = _offsetOrChild[node];
- else
- _currentChild = END;
+ _currentChild = hasChildren(node) ? _offsetOrChild[node]
+ : END;
}
return resetPosition();
}
@@ -674,10 +673,9 @@
if (_includeSelf) {
if (node == -1) {
node = _startNode;
- if (hasChildren(node))
- _currentChild = _offsetOrChild[node];
- else
- _currentChild = END;
+ _currentChild = hasChildren(node) ? _offsetOrChild[node]
+ : END;
+
// IMPORTANT: The start node (parent of all children) is
// returned, but the node position counter (_position)
// should not be increased, so returnNode() is not called
@@ -698,11 +696,16 @@
public int getLast() {
if (_last == -1) {
- _last = 1;
- int node = _offsetOrChild[_startNode];
- while ((node = _nextSibling[node]) != END) _last++;
+ _last = 0;
+
+ int node;
+ if ((node = _offsetOrChild[_startNode]) != END) {
+ do {
+ _last++;
+ } while ((node = _nextSibling[node]) != END);
+ }
}
- return(_last);
+ return _last;
}
} // end of ChildrenIterator
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org