Author: toad
Date: 2009-04-02 16:34:25 +0000 (Thu, 02 Apr 2009)
New Revision: 26357

Modified:
   trunk/freenet/src/freenet/client/async/SimpleManifestPutter.java
Log:
Ignore transitions if they don't concern us, like in ClientGetter etc.


Modified: trunk/freenet/src/freenet/client/async/SimpleManifestPutter.java
===================================================================
--- trunk/freenet/src/freenet/client/async/SimpleManifestPutter.java    
2009-04-02 16:25:30 UTC (rev 26356)
+++ trunk/freenet/src/freenet/client/async/SimpleManifestPutter.java    
2009-04-02 16:34:25 UTC (rev 26357)
@@ -1396,6 +1396,13 @@
                }
                synchronized(this) {
                        if(metadataPuttersByMetadata.containsKey(m)) {
+                               ClientPutState prevState = 
metadataPuttersByMetadata.get(m);
+                               if(prevState != oldState) {
+                                       if(logMINOR) Logger.minor(this, 
"Ignoring transition in "+this+" for metadata putter: "+oldState+" -> 
"+newState+" because current for "+m+" is "+prevState);
+                                       
container.deactivate(metadataPuttersUnfetchable, 1);
+                                       
container.deactivate(metadataPuttersByMetadata, 1);
+                                       return;
+                               }
                                if(persistent()) container.store(newState);
                                metadataPuttersByMetadata.put(m, newState);
                                if(persistent()) 
container.ext().store(metadataPuttersByMetadata, 2);

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

Reply via email to