mrglavas    2004/05/19 12:16:57

  Modified:    java/src/org/apache/xerces/dom ParentNode.java AttrImpl.java
  Log:
  Fixing Jira Bug #892:

  http://nagoya.apache.org/jira/browse/XERCESJ-892

  

  The DOM spec specifies that null should be returned from

  NodeList.item() if it is not a valid index. The spec defines

  the index as an unsigned int, but clearly negative indicies

  are not valid. Now return null for negative indicies. This

  is fixed thanks to the patch by Jonathan Au.

  
  Revision  Changes    Path
  1.44      +4 -1      xml-xerces/java/src/org/apache/xerces/dom/ParentNode.java
  
  Index: ParentNode.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/dom/ParentNode.java,v
  retrieving revision 1.43
  retrieving revision 1.44
  diff -u -r1.43 -r1.44
  --- ParentNode.java   2 Mar 2004 21:57:34 -0000       1.43
  +++ ParentNode.java   19 May 2004 19:16:57 -0000      1.44
  @@ -750,6 +750,9 @@
           }
           else {
               // long way
  +            if (index < 0) {
  +                return null;
  +            }
               n = firstChild;
               for (i = 0; i < index && n != null; i++) {
                   n = n.nextSibling;
  
  
  
  1.57      +5 -2      xml-xerces/java/src/org/apache/xerces/dom/AttrImpl.java
  
  Index: AttrImpl.java
  ===================================================================
  RCS file: /home/cvs/xml-xerces/java/src/org/apache/xerces/dom/AttrImpl.java,v
  retrieving revision 1.56
  retrieving revision 1.57
  diff -u -r1.56 -r1.57
  --- AttrImpl.java     24 Feb 2004 23:23:18 -0000      1.56
  +++ AttrImpl.java     19 May 2004 19:16:57 -0000      1.57
  @@ -1038,10 +1038,13 @@
                   return (Node) value;
               }
           }
  +        if (index < 0) {
  +            return null;
  +        }
           ChildNode node = (ChildNode) value;
           for (int i = 0; i < index && node != null; i++) {
               node = node.nextSibling;
  -        }
  +        } 
           return node;
   
       } // item(int):Node
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to