Author: yonik
Date: Sun Aug 13 19:39:23 2006
New Revision: 431284

URL: http://svn.apache.org/viewvc?rev=431284&view=rev
Log:
fix OpenBitSet.flip(start,end)

Modified:
    incubator/solr/trunk/src/java/org/apache/solr/util/OpenBitSet.java
    incubator/solr/trunk/src/test/org/apache/solr/util/TestOpenBitSet.java

Modified: incubator/solr/trunk/src/java/org/apache/solr/util/OpenBitSet.java
URL: 
http://svn.apache.org/viewvc/incubator/solr/trunk/src/java/org/apache/solr/util/OpenBitSet.java?rev=431284&r1=431283&r2=431284&view=diff
==============================================================================
--- incubator/solr/trunk/src/java/org/apache/solr/util/OpenBitSet.java 
(original)
+++ incubator/solr/trunk/src/java/org/apache/solr/util/OpenBitSet.java Sun Aug 
13 19:39:23 2006
@@ -368,7 +368,7 @@
     ***/
 
     long startmask = -1L << startIndex;
-    long endmask = (endIndex&0x3c)==0 ? 0 : -1L >>> (64-endIndex);
+    long endmask = (endIndex&0x3f)==0 ? 0 : -1L >>> (64-endIndex);
 
     if (this.wlen <= endWord) {
       this.wlen = endWord;

Modified: incubator/solr/trunk/src/test/org/apache/solr/util/TestOpenBitSet.java
URL: 
http://svn.apache.org/viewvc/incubator/solr/trunk/src/test/org/apache/solr/util/TestOpenBitSet.java?rev=431284&r1=431283&r2=431284&view=diff
==============================================================================
--- incubator/solr/trunk/src/test/org/apache/solr/util/TestOpenBitSet.java 
(original)
+++ incubator/solr/trunk/src/test/org/apache/solr/util/TestOpenBitSet.java Sun 
Aug 13 19:39:23 2006
@@ -64,6 +64,11 @@
           idx = rand.nextInt(sz);
           a.flip(idx);
           b.fastFlip(idx);
+          int idx1 = rand.nextInt(sz);
+          int idx2 = rand.nextInt(sz);
+          if (idx1>idx2) { idx=idx1; idx1=idx2; idx2=idx; }
+          a.flip(idx1,idx2);
+          b.flip(idx1,idx2);
 
           boolean val = b.flipAndGet(idx);
           boolean val2 = b.flipAndGet(idx);


Reply via email to