Author: toad
Date: 2009-01-27 14:20:37 +0000 (Tue, 27 Jan 2009)
New Revision: 25310

Modified:
   branches/db4o/freenet/src/freenet/client/async/SimpleManifestPutter.java
Log:
Fix another of TheSeeker's transient NPEs, this time caused by FMS doing 
transient ClientPutComplexDir's (why it does a putdir i have no idea...)


Modified: 
branches/db4o/freenet/src/freenet/client/async/SimpleManifestPutter.java
===================================================================
--- branches/db4o/freenet/src/freenet/client/async/SimpleManifestPutter.java    
2009-01-27 14:20:15 UTC (rev 25309)
+++ branches/db4o/freenet/src/freenet/client/async/SimpleManifestPutter.java    
2009-01-27 14:20:37 UTC (rev 25310)
@@ -465,8 +465,12 @@
        private void gotAllMetadata(ObjectContainer container, ClientContext 
context) {
                // This can be huge! Run it on its own transaction to minimize 
the build up of stuff to commit
                // and maximise the opportunities for garbage collection.
-               context.jobRunner.queueRestartJob(runGotAllMetadata, 
NativeThread.NORM_PRIORITY, container);
-               context.jobRunner.queue(runGotAllMetadata, 
NativeThread.NORM_PRIORITY, false);
+               if(persistent()) {
+                       context.jobRunner.queueRestartJob(runGotAllMetadata, 
NativeThread.NORM_PRIORITY, container);
+                       context.jobRunner.queue(runGotAllMetadata, 
NativeThread.NORM_PRIORITY, false);
+               } else {
+                       innerGotAllMetadata(null, context);
+               }
        }
        
        private void innerGotAllMetadata(ObjectContainer container, 
ClientContext context) {

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

Reply via email to