Author: toad
Date: 2008-06-30 15:04:13 +0000 (Mon, 30 Jun 2008)
New Revision: 20877
Modified:
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerBase.java
branches/db4o/freenet/src/freenet/support/SortedVectorByNumber.java
Log:
Another SortedVectorByNumber activation fix.
Modified:
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerBase.java
===================================================================
---
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerBase.java
2008-06-30 14:57:18 UTC (rev 20876)
+++
branches/db4o/freenet/src/freenet/client/async/ClientRequestSchedulerBase.java
2008-06-30 15:04:13 UTC (rev 20877)
@@ -268,7 +268,7 @@
container.set(this);
}
// Client
- SectoredRandomGrabArrayWithInt clientGrabber =
(SectoredRandomGrabArrayWithInt) prio.get(rc);
+ SectoredRandomGrabArrayWithInt clientGrabber =
(SectoredRandomGrabArrayWithInt) prio.get(rc, container);
if(persistent()) container.activate(clientGrabber, 1);
if(clientGrabber == null) {
clientGrabber = new SectoredRandomGrabArrayWithInt(rc,
persistent(), container);
Modified: branches/db4o/freenet/src/freenet/support/SortedVectorByNumber.java
===================================================================
--- branches/db4o/freenet/src/freenet/support/SortedVectorByNumber.java
2008-06-30 14:57:18 UTC (rev 20876)
+++ branches/db4o/freenet/src/freenet/support/SortedVectorByNumber.java
2008-06-30 15:04:13 UTC (rev 20877)
@@ -32,7 +32,12 @@
return length == 0;
}
- public synchronized IntNumberedItem get(int retryCount) {
+ public synchronized IntNumberedItem get(int retryCount, ObjectContainer
container) {
+ if(persistent) {
+ container.activate(this, 1);
+ for(int i=0;i<length;i++)
+ container.activate(data[i], 1);
+ }
int x = Arrays.binarySearch(data, new Integer(retryCount),
comparator);
if(x >= 0)
return data[x];