Author: toad
Date: 2008-02-16 13:31:44 +0000 (Sat, 16 Feb 2008)
New Revision: 17989
Modified:
trunk/freenet/src/freenet/client/async/RequestCooldownQueue.java
Log:
Fix ArrayIndexOutOfBounds.
Debugging.
Modified: trunk/freenet/src/freenet/client/async/RequestCooldownQueue.java
===================================================================
--- trunk/freenet/src/freenet/client/async/RequestCooldownQueue.java
2008-02-16 13:07:02 UTC (rev 17988)
+++ trunk/freenet/src/freenet/client/async/RequestCooldownQueue.java
2008-02-16 13:31:44 UTC (rev 17989)
@@ -29,7 +29,7 @@
int endPtr;
static boolean logMINOR;
- static final int MIN_SIZE = 1024;
+ static final int MIN_SIZE = 4;
final long cooldownTime;
@@ -92,9 +92,10 @@
} else {
endPtr++;
}
- } else /* endPtr == startPtr at beginning */ {
+ } else /* endPtr == startPtr : nothing queued */ {
if(logMINOR) Logger.minor(this, "endPtr == startPtr");
endPtr++;
+ if(endPtr == keys.length-1) endPtr = 0;
}
if(logMINOR) Logger.minor(this, "Added at "+ptr+"
startPtr="+startPtr+" endPtr="+endPtr);
keys[ptr] = key;