Author: toad
Date: 2008-07-23 16:43:11 +0000 (Wed, 23 Jul 2008)
New Revision: 21348
Modified:
branches/db4o/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
Log:
Deactivate in right place. Might have been the cause of the mis-registration
and NPE.
Modified:
branches/db4o/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
===================================================================
--- branches/db4o/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
2008-07-23 16:39:35 UTC (rev 21347)
+++ branches/db4o/freenet/src/freenet/client/async/SplitFileFetcherSegment.java
2008-07-23 16:43:11 UTC (rev 21348)
@@ -899,13 +899,11 @@
if(v != null) {
for(int i=0;i<v.size();i++) {
SplitFileFetcherSubSegment sub =
(SplitFileFetcherSubSegment) v.get(i);
+ if(persistent)
+ container.activate(sub, 1);
RandomGrabArray rga = sub.getParentGrabArray();
if(sub.getParentGrabArray() == null) {
- if(persistent)
- container.activate(sub, 1);
sub.schedule(container, context, false,
false);
- if(persistent)
- container.deactivate(sub, 1);
} else {
// if(logMINOR) {
if(persistent)
@@ -913,13 +911,13 @@
if(!rga.contains(sub,
container)) {
Logger.error(this,
"Sub-segment has RGA but isn't registered to it!!: "+sub+" for "+rga);
sub.schedule(container,
context, false, false);
- if(persistent)
-
container.deactivate(sub, 1);
}
if(persistent)
container.deactivate(rga, 1);
// }
}
+ if(persistent)
+ container.deactivate(sub, 1);
}
}
return true;