deal with legacy configuration folders
diff --git a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/sharedinstall/PreviousConfigurationFinderTest.java b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/sharedinstall/PreviousConfigurationFinderTest.java
index be364ef..e7f97b8 100644
--- a/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/sharedinstall/PreviousConfigurationFinderTest.java
+++ b/bundles/org.eclipse.equinox.p2.tests/src/org/eclipse/equinox/p2/tests/sharedinstall/PreviousConfigurationFinderTest.java
@@ -97,4 +97,13 @@
 		assertEquals(new Identifier(4, 1, 0), match.getVersion());
 	}
 
+	public void testLegacyFormat() throws Exception {
+		File configFolder = getTestData("sameProduct", "testData/previousConfigurationFinder/testLegacyFormat");
+		List<ConfigurationDescriptor> configs = new PreviousConfigurationFinder(configFolder).readPreviousConfigurations(configFolder);
+		ConfigurationDescriptor match = new PreviousConfigurationFinder(configFolder).findMostRelevantConfigurationFromProductId(configs, referenceConfiguration);
+		assertEquals("org.eclipse.platform", match.getProductId());
+		assertEquals(new Identifier(3, 8, 0), match.getVersion());
+		assertNull(match.getPlatformConfig());
+
+	}
 }
diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/previousConfigurationFinder/testLegacyFormat/org.eclipse.platform_3.8.1_12345/empty.txt b/bundles/org.eclipse.equinox.p2.tests/testData/previousConfigurationFinder/testLegacyFormat/org.eclipse.platform_3.8.1_12345/empty.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/bundles/org.eclipse.equinox.p2.tests/testData/previousConfigurationFinder/testLegacyFormat/org.eclipse.platform_3.8.1_12345/empty.txt
diff --git a/bundles/org.eclipse.equinox.p2.tests/testData/previousConfigurationFinder/testLegacyFormat/org.eclipse.platform_3.8_12345/empty.txt b/bundles/org.eclipse.equinox.p2.tests/testData/previousConfigurationFinder/testLegacyFormat/org.eclipse.platform_3.8_12345/empty.txt
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/bundles/org.eclipse.equinox.p2.tests/testData/previousConfigurationFinder/testLegacyFormat/org.eclipse.platform_3.8_12345/empty.txt
diff --git a/bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/PreviousConfigurationFinder.java b/bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/PreviousConfigurationFinder.java
index 09ae0f1..4010af2 100644
--- a/bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/PreviousConfigurationFinder.java
+++ b/bundles/org.eclipse.equinox.p2.ui.sdk.scheduler/src/org/eclipse/equinox/internal/p2/ui/sdk/scheduler/PreviousConfigurationFinder.java
@@ -172,8 +172,8 @@
 			}
 			criteriaMet++;
 
-			if (candidate.getProductId().equals(configToMatch.getProductId()) && //
-					candidate.getPlatformConfig().equals(configToMatch.getPlatformConfig()) && //
+			if (configToMatch.getProductId().equals(candidate.getProductId()) && //
+					configToMatch.getPlatformConfig().equals(candidate.getPlatformConfig()) && //
 					(!candidate.getVersion().isGreaterEqualTo(configToMatch.getVersion()))) {
 				//We have a match
 				criteriaMet++;
@@ -203,11 +203,13 @@
 		int numberOfcriteriaMet = 0;
 		for (ConfigurationDescriptor candidate : configurations) {
 			int criteriaMet = 0;
-			if (!candidate.getProductId().equals(configToMatch.getProductId()))
+			if (!configToMatch.getProductId().equals(candidate.getProductId()))
 				continue;
 
-			if (candidate.getPlatformConfig().equals(configToMatch.getPlatformConfig()) && //
-					(configToMatch.getVersion().isGreaterEqualTo(candidate.getVersion()))) {
+			if (configToMatch.getPlatformConfig().equals(candidate.getPlatformConfig()))
+				criteriaMet++;
+
+			if (configToMatch.getVersion().isGreaterEqualTo(candidate.getVersion())) {
 				//We have a match
 				criteriaMet++;
 			}