*** empty log message ***
diff --git a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/MinimalState.java b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/MinimalState.java
index 7ee2a41..c1de4f2 100644
--- a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/MinimalState.java
+++ b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/MinimalState.java
@@ -80,6 +80,7 @@
 	protected MinimalState(MinimalState state) {
 		this.fState = stateObjectFactory.createState(state.fState);
 		this.fState.setPlatformProperties(state.fState.getPlatformProperties());
+		this.fState.setResolver(Platform.getPlatformAdmin().getResolver());
 		this.fId = state.fId;
 		this.fEEListChanged = state.fEEListChanged;
 		this.fExecutionEnvironments = state.fExecutionEnvironments;
diff --git a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PDEState.java b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PDEState.java
index ad15296..ba9305d 100644
--- a/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PDEState.java
+++ b/ui/org.eclipse.pde.core/src/org/eclipse/pde/internal/core/PDEState.java
@@ -22,7 +22,6 @@
 
 import org.eclipse.core.resources.IFile;
 import org.eclipse.core.resources.IProject;
-import org.eclipse.core.resources.IResource;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;
@@ -317,24 +316,15 @@
 	}
 	
 	private long computeTimestamp(IPluginModelBase[] models) {
-		return computeTimestamp(getModelsURLs(models));
-	}
-	
-	private URL[] getModelsURLs(IPluginModelBase[] models) {
 		URL[] urls = new URL[models.length];
 		for (int i = 0; i < models.length; i++) {
 			try {
-				IResource res = models[i].getUnderlyingResource();
-				if (res != null) {
-					IProject project = res.getProject();
-					urls[i] = new File(project.getLocation().toString()).toURL();
-				} else {
-					urls[i] = new File(models[i].getInstallLocation()).toURL();
-				}
+				IProject project = models[i].getUnderlyingResource().getProject();
+				urls[i] = new File(project.getLocation().toString()).toURL();
 			} catch (MalformedURLException e) {
 			}
 		}
-		return urls;
+		return computeTimestamp(urls);
 	}
 	
 	private boolean shouldSaveState(IPluginModelBase[] models) {