Author: toad
Date: 2006-11-24 23:11:23 +0000 (Fri, 24 Nov 2006)
New Revision: 11044

Modified:
   trunk/freenet/src/freenet/io/xfer/BlockReceiver.java
Log:
Cancel the PRB when we are disconnected in the middle of a transfer.
This bug was causing leaked sender threads.

Modified: trunk/freenet/src/freenet/io/xfer/BlockReceiver.java
===================================================================
--- trunk/freenet/src/freenet/io/xfer/BlockReceiver.java        2006-11-24 
23:10:38 UTC (rev 11043)
+++ trunk/freenet/src/freenet/io/xfer/BlockReceiver.java        2006-11-24 
23:11:23 UTC (rev 11044)
@@ -77,6 +77,7 @@
                 if(!_sender.isConnected()) throw new DisconnectedException();
             } catch (DisconnectedException e1) {
                 Logger.normal(this, "Disconnected during receive: "+_uid+" 
from "+_sender);
+                _prb.abort(RetrievalException.SENDER_DIED, "Disconnected 
during receive");
                 throw new 
RetrievalException(RetrievalException.SENDER_DISCONNECTED);
             }
             if(Logger.shouldLog(Logger.MINOR, this))


Reply via email to