r26854 - trunk/freenet/src/freenet/client/async

[email protected] Wed, 15 Apr 2009 20:13:51 +0000
Newsgroups gmane.network.freenet.cvs
Message-ID <[email protected]>
Author: saces
Date: 2009-04-15 20:13:50 +0000 (Wed, 15 Apr 2009)
New Revision: 26854

Modified:
   trunk/freenet/src/freenet/client/async/BaseManifestPutter.java
Log:
npe fixes, minor refactoring

Modified: trunk/freenet/src/freenet/client/async/BaseManifestPutter.java
===================================================================
--- trunk/freenet/src/freenet/client/async/BaseManifestPutter.java	2009-04-15 19:46:22 UTC (rev 26853)
+++ trunk/freenet/src/freenet/client/async/BaseManifestPutter.java	2009-04-15 20:13:50 UTC (rev 26854)
@@ -257,11 +257,13 @@
 					insertedAllFiles = false;
 				}
 			}
-			if(oldState != null && oldState != state && persistent) {
-				container.activate(oldState, 1);
-				oldState.removeFrom(container, context);
-			} else if(state != null && persistent) {
-				state.removeFrom(container, context);
+			if (persistent) {
+				if(oldState != null && oldState != state) {
+					container.activate(oldState, 1);
+					oldState.removeFrom(container, context);
+				} else if(state != null) {
+					state.removeFrom(container, context);
+				}
 			}
 			if(insertedAllFiles)
 				insertedAllFiles(container, context);
@@ -1015,9 +1017,10 @@
 				HashMap<String,Object> subMap = new HashMap<String,Object>();
 				// Already activated
 				namesToByteArrays.put(name, subMap);
-				if(logMINOR)
-					Logger.minor(this, "Putting hashmap into base metadata: "+name+" size "+((HashMap)o).size()+" active = "+container == null ? "null" : Boolean.toString(container.ext().isActive(o)));
-				Logger.minor(this, "Putting directory: "+name);
+				if(logMINOR) {
+					Logger.minor(this, "Putting hashmap into base metadata: "+name+" size "+((HashMap)o).size()+" active = "+((container == null) ? "null" : Boolean.toString(container.ext().isActive(o))));
+					Logger.minor(this, "Putting directory: "+name);
+				}
 				namesToByteArrays((HashMap<String, Object>)o, subMap, container);
 			} else
 				throw new IllegalStateException();
@@ -1311,9 +1314,9 @@
 				}
 			}
 		}
-		if(token != baseMetadata)
-			token.removeFrom(container);
 		if(persistent()) {
+			if(token != baseMetadata)
+				token.removeFrom(container);
 			container.ext().store(metadataPuttersByMetadata, 2);
 			container.deactivate(metadataPuttersByMetadata, 1);
 			state.removeFrom(container, context);