Updated SDK manager behavior when scanning drives for SDKs. C3_BUILDER_WORK
authorstechong
Wed, 21 Jul 2010 16:13:43 -0500
branchC3_BUILDER_WORK
changeset 1663 21ded3449e77
parent 1662 a3c5489267d1
child 1664 65c3d72a8793
Updated SDK manager behavior when scanning drives for SDKs.
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/AbstractSDKManager.java
core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SDKManager.java
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/AbstractSDKManager.java	Wed Jul 21 15:24:25 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/AbstractSDKManager.java	Wed Jul 21 16:13:43 2010 -0500
@@ -182,8 +182,6 @@
 			if (!doScanSDKs(monitor))
 				return Status.OK_STATUS;;
 
-			scanCarbideSDKCache();
-
 			// now these SDK's are newly added, remove from internal list
 			for (ISymbianSDK sdk : sdkList) {
 				if (SDKManagerInternalAPI.getMissingSdk(sdk.getUniqueId()) != null) {
--- a/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SDKManager.java	Wed Jul 21 15:24:25 2010 -0500
+++ b/core/com.nokia.carbide.cpp.sdk.core/src/com/nokia/carbide/cpp/internal/sdk/core/model/SDKManager.java	Wed Jul 21 16:13:43 2010 -0500
@@ -34,7 +34,6 @@
 import org.eclipse.emf.common.util.EList;
 import org.eclipse.jface.dialogs.MessageDialog;
 import org.eclipse.swt.widgets.Shell;
-import org.eclipse.ui.IWorkbenchWindow;
 import org.eclipse.ui.PlatformUI;
 import org.osgi.framework.Version;
 
@@ -107,6 +106,7 @@
 			result = false;
 		}
 
+		scanCarbideSDKCache();
 		doScanDrives(monitor);
 		return result;
 	}
@@ -485,8 +485,8 @@
 	}
 
 	private boolean isEPOCRoot(File drive) {
-		File epocRoot = new File(drive, "epoc32");
-		if (epocRoot.exists()) {
+		IPath epocInclude = new Path(drive.getAbsolutePath()).append("epoc32").append("include");
+		if (epocInclude.toFile().exists()) {
 			return true;
 		} else {
 			return false;