Author: toad
Date: 2008-09-24 10:41:07 +0000 (Wed, 24 Sep 2008)
New Revision: 22793
Modified:
trunk/freenet/src/freenet/node/PeerMessageQueue.java
Log:
Bug in round-robin logic: Always start at *the next slot*, not the one we just
grabbed from!
Modified: trunk/freenet/src/freenet/node/PeerMessageQueue.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerMessageQueue.java 2008-09-24
05:57:58 UTC (rev 22792)
+++ trunk/freenet/src/freenet/node/PeerMessageQueue.java 2008-09-24
10:41:07 UTC (rev 22793)
@@ -169,7 +169,7 @@
lists += itemsWithID.size();
for(int i=0;i<lists;i++) {
LinkedList<MessageItem> list;
- int l = (i + roundRobinCounter) % lists;
+ int l = (i + roundRobinCounter + 1) % lists;
int listNum = -1;
if(itemsNoID != null) {
if(l == 0) list = itemsNoID;
@@ -252,7 +252,7 @@
lists += itemsWithID.size();
for(int i=0;i<lists;i++) {
LinkedList<MessageItem> list;
- int l = (i + roundRobinCounter) % lists;
+ int l = (i + roundRobinCounter + 1) % lists;
int listNum = -1;
if(itemsNoID != null) {
if(l == 0) list = itemsNoID;