[freenet-cvs] r15075 - branches/freenet-jfk/src/freenet/node

nextgens at freenetproject.org nextgens at freenetproject.org
Sat Sep 8 22:55:49 UTC 2007


Author: nextgens
Date: 2007-09-08 22:55:48 +0000 (Sat, 08 Sep 2007)
New Revision: 15075

Modified:
   branches/freenet-jfk/src/freenet/node/PacketSender.java
Log:
Fix a bug in PacketSender; we weren't ever disconnecting from a non-routable peer!

Modified: branches/freenet-jfk/src/freenet/node/PacketSender.java
===================================================================
--- branches/freenet-jfk/src/freenet/node/PacketSender.java	2007-09-08 19:33:26 UTC (rev 15074)
+++ branches/freenet-jfk/src/freenet/node/PacketSender.java	2007-09-08 22:55:48 UTC (rev 15075)
@@ -182,20 +182,17 @@
                 Math.max(pn.lastReceivedPacketTime(), lastReceivedPacketFromAnyNode);
 			pn.maybeOnConnect();
             if(pn.isConnected()) {
-            	
-            	if(pn.isRoutable() && pn.noLongerRoutable()) {
-            		// we don't disconnect but we mark it incompatible
-            		pn.invalidate();
-            		pn.setPeerNodeStatus(now);
-            		Logger.normal(this, "shouldDisconnectNow has returned true : marking the peer as incompatible");
-            		continue;
-            	}
-            	
                 // Is the node dead?
-                if(pn.isRoutable() && now - pn.lastReceivedPacketTime() > pn.maxTimeBetweenReceivedPackets()) {
+                if(now - pn.lastReceivedPacketTime() > pn.maxTimeBetweenReceivedPackets()) {
                 	Logger.normal(this, "Disconnecting from "+pn+" - haven't received packets recently");
                     pn.disconnected();
                     continue;
+                } else if(pn.isRoutable() && pn.noLongerRoutable()) {
+                	// we don't disconnect but we mark it incompatible
+                	pn.invalidate();
+                	pn.setPeerNodeStatus(now);
+                	Logger.normal(this, "shouldDisconnectNow has returned true : marking the peer as incompatible");
+                	continue;
                 }
                 
                 boolean mustSend = false;




More information about the cvs mailing list