diff --git a/router/java/src/net/i2p/router/util/RandomIterator.java b/router/java/src/net/i2p/router/util/RandomIterator.java index e6e7df59e852dbc646d82d2be760ff504ce467e2..ef31d4c2b8d2d49cb754fb3d13d15de7b38da007 100644 --- a/router/java/src/net/i2p/router/util/RandomIterator.java +++ b/router/java/src/net/i2p/router/util/RandomIterator.java @@ -137,9 +137,9 @@ public class RandomIterator<E> implements Iterator<E> { if (hasNext()) { if (index == lower) // workaround for Android ICS bug - see below - lower = isAndroid ? nextClearBit(lower) : served.nextClearBit(lower); + lower = isAndroid ? nextClearBit(index) : served.nextClearBit(index); else if (index == upper) - upper = previousClearBit(upper - 1); + upper = previousClearBit(index - 1); } return list.get(index); }