igorh       2004/06/21 12:05:16

  Modified:    java/src/org/apache/xalan/xsltc/util IntegerArray.java
               java/src/org/apache/xalan/xsltc/dom KeyIndex.java
  Log:
  Fix for Bugzilla Bugs 28622
  
  Revision  Changes    Path
  1.9       +4 -3      
xml-xalan/java/src/org/apache/xalan/xsltc/util/IntegerArray.java
  
  Index: IntegerArray.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/util/IntegerArray.java,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- IntegerArray.java 16 Feb 2004 22:58:24 -0000      1.8
  +++ IntegerArray.java 21 Jun 2004 19:05:16 -0000      1.9
  @@ -103,9 +103,10 @@
       }
   
       /**
  -     * Merge two sorted arrays and eliminate duplicates. 
  +     * Merge two sorted arrays and eliminate duplicates.
  +     * Elements of the other IntegerArray must not be changed. 
        */
  -    public void merge(IntegerArray other) {
  +    public void merge(final IntegerArray other) {
        final int newSize = _free + other._free;
   // System.out.println("IntegerArray.merge() begin newSize = " + newSize);
        int[] newArray = new int[newSize];
  
  
  
  1.14      +8 -6      
xml-xalan/java/src/org/apache/xalan/xsltc/dom/KeyIndex.java
  
  Index: KeyIndex.java
  ===================================================================
  RCS file: 
/home/cvs/xml-xalan/java/src/org/apache/xalan/xsltc/dom/KeyIndex.java,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- KeyIndex.java     16 Feb 2004 22:54:59 -0000      1.13
  +++ KeyIndex.java     21 Jun 2004 19:05:16 -0000      1.14
  @@ -70,11 +70,12 @@
        * always be added in document order.
        */
       public void add(Object value, int node) {
  -     IntegerArray nodes;
  -     if ((nodes = (IntegerArray) _index.get(value)) == null) {
  -         _index.put(value, nodes = new IntegerArray());
  -     }
  -     nodes.add(node);
  +             IntegerArray nodes = (IntegerArray) _index.get(value);
  +             if (nodes == null) {
  +                      nodes = new IntegerArray();
  +                 _index.put(value, nodes);
  +             }
  +             nodes.add(node);
       }
   
       /**
  @@ -117,6 +118,7 @@
            if (nodes == null) continue;
   
            if (_nodes == null) {
  +              nodes = (IntegerArray)nodes.clone();
                _nodes = nodes;
            }
            else {
  
  
  

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

Reply via email to