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