[jboss-svn-commits] JBL Code SVN: r12878 - labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Jun 26 22:41:21 EDT 2007


Author: mark.proctor at jboss.com
Date: 2007-06-26 22:41:21 -0400 (Tue, 26 Jun 2007)
New Revision: 12878

Modified:
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/FactHandleIndexHashTable.java
   labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/TupleIndexHashTable.java
Log:
JBRULES-904 ArrayIndexOutOfBoundsException in org.drools.util.TupleIndexHashTable.toArray
-Wasn't iterating nested structures, does so now.

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/FactHandleIndexHashTable.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/FactHandleIndexHashTable.java	2007-06-27 02:35:54 UTC (rev 12877)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/FactHandleIndexHashTable.java	2007-06-27 02:41:21 UTC (rev 12878)
@@ -121,16 +121,17 @@
         int index = 0;
         for ( int i = 0; i < this.table.length; i++ ) {
             FieldIndexEntry fieldIndexEntry = (FieldIndexEntry)this.table[i];
-            if ( fieldIndexEntry != null ) {
+            while ( fieldIndexEntry != null ) {
                 Entry entry = fieldIndexEntry.getFirst();
                 while ( entry != null ) {
                     result[index++] = entry;
                     entry = entry.getNext();
-                }
+                }       
+                fieldIndexEntry  = ( FieldIndexEntry ) fieldIndexEntry.getNext();
             }
         }
         return result;
-    }    
+    }  
 
     public boolean add(final InternalFactHandle handle) {
         final FieldIndexEntry entry = getOrCreate( handle.getObject() );

Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/TupleIndexHashTable.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/TupleIndexHashTable.java	2007-06-27 02:35:54 UTC (rev 12877)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/util/TupleIndexHashTable.java	2007-06-27 02:41:21 UTC (rev 12878)
@@ -172,12 +172,13 @@
         int index = 0;
         for ( int i = 0; i < this.table.length; i++ ) {
             FieldIndexEntry fieldIndexEntry = (FieldIndexEntry)this.table[i];
-            if ( fieldIndexEntry != null ) {
+            while ( fieldIndexEntry != null ) {
                 Entry entry = fieldIndexEntry.getFirst();
                 while ( entry != null ) {
                     result[index++] = entry;
                     entry = entry.getNext();
-                }
+                }       
+                fieldIndexEntry  = ( FieldIndexEntry ) fieldIndexEntry.getNext();
             }
         }
         return result;




More information about the jboss-svn-commits mailing list