Author: nextgens
Date: 2009-01-27 20:51:14 +0000 (Tue, 27 Jan 2009)
New Revision: 25336

Modified:
   trunk/freenet/
   trunk/freenet/src/freenet/client/async/SplitFileInserter.java
Log:
backport r24785 as requested by toad (Pad the last block of a splitfile BEFORE 
INSERT, not during FEC encoding. Insert)


Property changes on: trunk/freenet
___________________________________________________________________
Modified: svn:mergeinfo
   - /branches/db4o/freenet:25282,25332
   + /branches/db4o/freenet:24785,25282,25332

Modified: trunk/freenet/src/freenet/client/async/SplitFileInserter.java
===================================================================
--- trunk/freenet/src/freenet/client/async/SplitFileInserter.java       
2009-01-27 20:48:21 UTC (rev 25335)
+++ trunk/freenet/src/freenet/client/async/SplitFileInserter.java       
2009-01-27 20:51:14 UTC (rev 25336)
@@ -89,6 +89,13 @@
                                Bucket oldData = 
dataBuckets[dataBuckets.length-1];
                                dataBuckets[dataBuckets.length-1] = 
BucketTools.pad(oldData, CHKBlock.DATA_LENGTH, ctx.persistentBucketFactory, 
(int) oldData.size());
                                oldData.free();
+                               if(dataBuckets[dataBuckets.length-1].size() < 
CHKBlock.DATA_LENGTH) {
+                                       Bucket oldData = 
dataBuckets[dataBuckets.length-1];
+                                       dataBuckets[dataBuckets.length-1] = 
BucketTools.pad(oldData, CHKBlock.DATA_LENGTH, context.persistentBucketFactory, 
(int) oldData.size());
+                                       if(persistent) 
dataBuckets[dataBuckets.length-1].storeTo(container);
+                                       oldData.free();
+                                       if(persistent) 
oldData.removeFrom(container);
+                               }
                        }
                } catch (IOException e) {
                        throw new InsertException(InsertException.BUCKET_ERROR, 
e, null);

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

Reply via email to