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);