Author: toad
Date: 2009-03-07 18:25:20 +0000 (Sat, 07 Mar 2009)
New Revision: 25944
Modified:
branches/db4o/freenet/src/freenet/client/async/MultiPutCompletionCallback.java
Log:
Single block insert leak fixes
Modified:
branches/db4o/freenet/src/freenet/client/async/MultiPutCompletionCallback.java
===================================================================
---
branches/db4o/freenet/src/freenet/client/async/MultiPutCompletionCallback.java
2009-03-07 18:24:15 UTC (rev 25943)
+++
branches/db4o/freenet/src/freenet/client/async/MultiPutCompletionCallback.java
2009-03-07 18:25:20 UTC (rev 25944)
@@ -49,6 +49,8 @@
public void onSuccess(ClientPutState state, ObjectContainer container,
ClientContext context) {
onBlockSetFinished(state, container, context);
onFetchable(state, container);
+ if(persistent)
+ container.activate(waitingFor, 2);
boolean complete = true;
synchronized(this) {
if(finished) {
@@ -72,6 +74,8 @@
}
complete = false;
}
+ if(state == generator)
+ generator = null;
}
if(persistent) state.removeFrom(container, context);
if(complete) {
@@ -99,6 +103,8 @@
container.store(this);
complete = false;
}
+ if(state == generator)
+ generator = null;
}
if(persistent) {
container.store(waitingFor);
@@ -235,6 +241,8 @@
}
public void onBlockSetFinished(ClientPutState state, ObjectContainer
container, ClientContext context) {
+ if(persistent)
+ container.activate(waitingForBlockSet, 2);
synchronized(this) {
this.waitingForBlockSet.remove(state);
if(persistent)
@@ -260,6 +268,8 @@
}
public void onFetchable(ClientPutState state, ObjectContainer
container) {
+ if(persistent)
+ container.activate(waitingForFetchable, 2);
synchronized(this) {
this.waitingForFetchable.remove(state);
if(persistent)
_______________________________________________
cvs mailing list
[email protected]
http://emu.freenetproject.org/cgi-bin/mailman/listinfo/cvs