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))