Bug 217739 [prov] Silent error on agent startup
diff --git a/bundles/org.eclipse.equinox.p2.engine/src/org/eclipse/equinox/internal/p2/engine/SimpleProfileRegistry.java b/bundles/org.eclipse.equinox.p2.engine/src/org/eclipse/equinox/internal/p2/engine/SimpleProfileRegistry.java
index c24a51b..6fda86f 100644
--- a/bundles/org.eclipse.equinox.p2.engine/src/org/eclipse/equinox/internal/p2/engine/SimpleProfileRegistry.java
+++ b/bundles/org.eclipse.equinox.p2.engine/src/org/eclipse/equinox/internal/p2/engine/SimpleProfileRegistry.java
@@ -117,6 +117,11 @@
 		if (result == null)
 			result = new LinkedHashMap(8);
 		profiles = new SoftReference(result);
+		if (!restored) {
+			//update roaming profile on first load
+			restored = true;
+			updateRoamingProfile(result);
+		}
 		return result;
 	}
 
@@ -266,11 +271,6 @@
 				if (bif != null)
 					bif.close();
 			}
-			if (!restored) {
-				//update roaming profile on first load
-				restored = true;
-				updateRoamingProfile(loadedMap);
-			}
 		} catch (FileNotFoundException e) {
 			//This is ok.
 		} catch (IOException e) {