Author: toad
Date: 2008-04-01 23:40:26 +0000 (Tue, 01 Apr 2008)
New Revision: 18899
Modified:
trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
Log:
Prevent a temporary file leak, and more consistent fetched blocks count.
Modified: trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
===================================================================
--- trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
2008-04-01 23:12:11 UTC (rev 18898)
+++ trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
2008-04-01 23:40:26 UTC (rev 18899)
@@ -160,10 +160,9 @@
// No need to unregister key, because it will be cleared in
tripPendingKey().
boolean dontNotify;
synchronized(this) {
- if(isFinished()) return;
if(blockNo < dataKeys.length) {
if(dataKeys[blockNo] == null) {
- Logger.error(this, "Block already
finished: "+blockNo);
+ if(!startedDecode) Logger.error(this,
"Block already finished: "+blockNo);
return;
}
dataKeys[blockNo] = null;
@@ -171,7 +170,7 @@
} else if(blockNo < checkKeys.length + dataKeys.length)
{
blockNo -= dataKeys.length;
if(checkKeys[blockNo] == null) {
- Logger.error(this, "Check block already
finished: "+blockNo);
+ if(!startedDecode) Logger.error(this,
"Check block already finished: "+blockNo);
return;
}
checkKeys[blockNo] = null;