Author: toad
Date: 2007-06-18 16:07:26 +0000 (Mon, 18 Jun 2007)
New Revision: 13649
Modified:
trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
Log:
Bugfixes from Anonymous at o9_0DTuZniSf_+oDmRsonByWxsI
Modified: trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
===================================================================
--- trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
2007-06-18 11:41:53 UTC (rev 13648)
+++ trunk/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
2007-06-18 16:07:26 UTC (rev 13649)
@@ -190,13 +190,6 @@
// Now decode
if(logMINOR) Logger.minor(this, "Decoding
"+SplitFileFetcherSegment.this);
- boolean[] dataBlocksSucceeded = new boolean[dataBuckets.length];
- boolean[] checkBlocksSucceeded = new
boolean[checkBuckets.length];
- for(int i=0;i<dataBuckets.length;i++)
- dataBlocksSucceeded[i] = dataBuckets[i].data != null;
- for(int i=0;i<checkBuckets.length;i++)
- checkBlocksSucceeded[i] = checkBuckets[i].data != null;
-
codec = FECCodec.getCodec(splitfileType, dataKeys.length,
checkKeys.length);
if(splitfileType != Metadata.SPLITFILE_NONREDUNDANT) {
@@ -345,7 +338,8 @@
failedBlocks++;
parentFetcher.parent.failedBlock();
}
- allFailed = failedBlocks + fatallyFailedBlocks <=
(dataKeys.length + checkKeys.length - minFetched);
+ // Once it is no longer possible to have a successful
fetch, fail...
+ allFailed = failedBlocks + fatallyFailedBlocks >
(dataKeys.length + checkKeys.length - minFetched);
}
if(allFailed)
fail(new FetchException(FetchException.SPLITFILE_ERROR,
errors));