Author: toad
Date: 2008-12-22 19:33:56 +0000 (Mon, 22 Dec 2008)
New Revision: 24749

Modified:
   branches/db4o/freenet/src/freenet/support/io/SegmentedBucketChainBucket.java
Log:
Don't cause all the buckets to be temporarily active simultaneously during 
free() on SegmentedBucketChainBucket!


Modified: 
branches/db4o/freenet/src/freenet/support/io/SegmentedBucketChainBucket.java
===================================================================
--- 
branches/db4o/freenet/src/freenet/support/io/SegmentedBucketChainBucket.java    
    2008-12-22 19:33:27 UTC (rev 24748)
+++ 
branches/db4o/freenet/src/freenet/support/io/SegmentedBucketChainBucket.java    
    2008-12-22 19:33:56 UTC (rev 24749)
@@ -68,7 +68,9 @@
                                        segs = segments.toArray(new 
SegmentedChainBucketSegment[segments.size()]);
                                        segments.clear();
                                }
-                               for(SegmentedChainBucketSegment segment : segs) 
{
+                               for(int i=0;i<segs.length;i++) {
+                                       SegmentedChainBucketSegment segment = 
segs[i];
+                                       segs[i] = null;
                                        container.activate(segment, 1);
                                        if(Logger.shouldLog(Logger.MINOR, 
SegmentedBucketChainBucket.this)) 
                                                
Logger.minor(SegmentedBucketChainBucket.this, "Freeing segment "+segment);

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

Reply via email to