Author: toad
Date: 2009-04-06 23:26:18 +0000 (Mon, 06 Apr 2009)
New Revision: 26580

Modified:
   trunk/freenet/src/freenet/client/async/SingleFileFetcher.java
Log:
Fix NPE properly - copy the data because it is transient and we need it to be 
persistent


Modified: trunk/freenet/src/freenet/client/async/SingleFileFetcher.java
===================================================================
--- trunk/freenet/src/freenet/client/async/SingleFileFetcher.java       
2009-04-06 22:58:01 UTC (rev 26579)
+++ trunk/freenet/src/freenet/client/async/SingleFileFetcher.java       
2009-04-06 23:26:18 UTC (rev 26580)
@@ -477,8 +477,11 @@
                                        final Bucket out;
                                        try {
                                                // Data will not be freed until 
client is finished with it.
-                                               if(returnBucket != null && 
persistent) {
-                                                       out = returnBucket;
+                                               if(returnBucket != null || 
persistent) {
+                                                       if(returnBucket == null)
+                                                               out = 
context.persistentBucketFactory.makeBucket(dataBucket.size());
+                                                       else
+                                                               out = 
returnBucket;
                                                        
BucketTools.copy(dataBucket, out);
                                                        dataBucket.free();
                                                } else {

_______________________________________________
cvs mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs

Reply via email to