Author: toad
Date: 2007-07-24 16:46:13 +0000 (Tue, 24 Jul 2007)
New Revision: 14305
Modified:
trunk/freenet/src/freenet/node/fcp/ClientGet.java
Log:
Maybe fix internal error: data != returnbucket
Modified: trunk/freenet/src/freenet/node/fcp/ClientGet.java
===================================================================
--- trunk/freenet/src/freenet/node/fcp/ClientGet.java 2007-07-24 16:36:34 UTC
(rev 14304)
+++ trunk/freenet/src/freenet/node/fcp/ClientGet.java 2007-07-24 16:46:13 UTC
(rev 14305)
@@ -259,9 +259,18 @@
ret =
SerializableToFieldSetBucketUtil.create(fs.subset("ReturnBucket"), fctx.random,
client.server.core.persistentTempBucketFactory);
} catch (CannotCreateFromFieldSetException e) {
Logger.error(this, "Cannot read: "+this+" :
"+e, e);
- ret = null;
- finished = false;
- succeeded = false;
+ try {
+ // Create a new temp bucket
+ if(persistenceType == PERSIST_FOREVER)
+ ret =
client.server.core.persistentTempBucketFactory.makeEncryptedBucket();
+ else
+ ret =
fctx.bucketFactory.makeBucket(-1);
+ } catch (IOException e1) {
+ onFailure(new
FetchException(FetchException.BUCKET_ERROR), null);
+ getter = null;
+ returnBucket = null;
+ return;
+ }
}
} else {
throw new IllegalArgumentException();