Author: dbkr
Date: 2006-03-04 15:03:30 +0000 (Sat, 04 Mar 2006)
New Revision: 8154

Modified:
   trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java
   trunk/freenet/src/freenet/node/Version.java
Log:
Catch an exception in block transmitting thread.


Modified: trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java
===================================================================
--- trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java     2006-03-04 
14:06:14 UTC (rev 8153)
+++ trunk/freenet/src/freenet/io/xfer/BlockTransmitter.java     2006-03-04 
15:03:30 UTC (rev 8154)
@@ -20,6 +20,7 @@

 import java.util.Iterator;
 import java.util.LinkedList;
+import java.util.NoSuchElementException;

 import freenet.io.comm.DMT;
 import freenet.io.comm.DisconnectedException;
@@ -202,8 +203,13 @@
                                                long startDelayTime = 
System.currentTimeMillis();
                                                delay(startCycleTime);
                                                int packetNo;
-                                               synchronized(_unsent) {
-                                                       packetNo = ((Integer) 
_unsent.removeFirst()).intValue();
+                                               try {
+                                                       synchronized(_unsent) {
+                                                               packetNo = 
((Integer) _unsent.removeFirst()).intValue();
+                                                       }
+                                               } catch (NoSuchElementException 
nsee) {
+                                                       // back up to the top 
to check for completion
+                                                       continue;
                                                }
                                                _sentPackets.setBit(packetNo, 
true);
                                                try {

Modified: trunk/freenet/src/freenet/node/Version.java
===================================================================
--- trunk/freenet/src/freenet/node/Version.java 2006-03-04 14:06:14 UTC (rev 
8153)
+++ trunk/freenet/src/freenet/node/Version.java 2006-03-04 15:03:30 UTC (rev 
8154)
@@ -20,7 +20,7 @@
        public static final String protocolVersion = "1.0";

        /** The build number of the current revision */
-       private static final int buildNumber = 488;
+       private static final int buildNumber = 489;

        /** Oldest build of Fred we will talk to */
        private static final int lastGoodBuild = 475;


Reply via email to