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;


Reply via email to