Fix more path conversion issues with Symbian launch
authorEd Swartz <ed.swartz@nokia.com>
Wed, 09 Dec 2009 15:39:08 -0600
changeset 664 18b0c24adafe
parent 660 749482434cfa
child 665 12ea338ad1f6
Fix more path conversion issues with Symbian launch
debuggercdi/com.nokia.cdt.debug.cw.symbian/src/com/nokia/cdt/debug/cw/symbian/SettingsData.java
debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/AddEditFileToTransferDialog.java
debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/FileTransferTab.java
debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/InstallationTab.java
--- a/debuggercdi/com.nokia.cdt.debug.cw.symbian/src/com/nokia/cdt/debug/cw/symbian/SettingsData.java	Wed Dec 09 09:02:51 2009 -0600
+++ b/debuggercdi/com.nokia.cdt.debug.cw.symbian/src/com/nokia/cdt/debug/cw/symbian/SettingsData.java	Wed Dec 09 15:39:08 2009 -0600
@@ -62,6 +62,7 @@
 import com.nokia.carbide.cpp.sdk.core.ISymbianSDK;
 import com.nokia.carbide.cpp.sdk.core.SDKCorePlugin;
 import com.nokia.carbide.remoteconnections.interfaces.IConnection;
+import com.nokia.cpp.internal.api.utils.core.HostOS;
 
 import cwdbg.PreferenceConstants;
 
@@ -382,7 +383,7 @@
 				// otherwise warn them that we can't set default values.
 				if (buildConfig.getPlatformString().compareTo(ISymbianBuildContext.EMULATOR_PLATFORM) != 0) {
 					configuration.setAttribute(ICDTLaunchConfigurationConstants.ATTR_PROGRAM_NAME, mainExeHostPath == null ? "" : mainExeHostPath.toOSString());
-					configuration.setAttribute(PreferenceConstants.J_PN_RemoteProcessToLaunch, mainExeTargetPath == null ? "" : mainExeTargetPath.toOSString());
+					configuration.setAttribute(PreferenceConstants.J_PN_RemoteProcessToLaunch, mainExeTargetPath == null ? "" : HostOS.convertPathToWindows(mainExeTargetPath));
 				} else {
 					displayWarningDialog(Messages.getString("SettingsData.37")); //$NON-NLS-1$
 				}
@@ -528,9 +529,9 @@
 					if (hp != null) {
 						IPath tp = EpocEngineHelper.getTargetPathForExecutable(buildConfig, mmp);
 						if (tp == null) {
-							tp = new Path(defaultTargetPath).append(hp.lastSegment());
+							tp = HostOS.createPathFromString(defaultTargetPath).append(hp.lastSegment());
 						}
-						prefsData += hp.toOSString() + "," + tp.toOSString() + enabled; //$NON-NLS-1$
+						prefsData += hp.toOSString() + "," + HostOS.convertPathToWindows(tp) + enabled; //$NON-NLS-1$
 					}
 					
 					HashMap<String, String> hostTargetRSRCMap = EpocEngineHelper.getHostAndTargetResources(buildConfig, mmp);
@@ -687,7 +688,8 @@
 				if (cpi != null) {			
 					ICarbideBuildConfiguration buildConfig = cpi.getDefaultConfiguration();
 
-					mainExeTargetPath = getCanonicalPath(EpocEngineHelper.getTargetPathForExecutable(buildConfig, workspaceRelativeMMPPath));
+					// do not canonicalize
+					mainExeTargetPath = EpocEngineHelper.getTargetPathForExecutable(buildConfig, workspaceRelativeMMPPath);
 				}
 			}
 		}
@@ -1018,7 +1020,7 @@
 	}
 	
 	public static void setProcessToLaunch(ILaunchConfigurationWorkingCopy configuration, IPath path) {
-		configuration.setAttribute(PreferenceConstants.J_PN_RemoteProcessToLaunch, path.toOSString());
+		configuration.setAttribute(PreferenceConstants.J_PN_RemoteProcessToLaunch, HostOS.convertPathToWindows(path));
 	}
 	
 }
\ No newline at end of file
--- a/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/AddEditFileToTransferDialog.java	Wed Dec 09 09:02:51 2009 -0600
+++ b/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/AddEditFileToTransferDialog.java	Wed Dec 09 15:39:08 2009 -0600
@@ -38,6 +38,8 @@
 import org.eclipse.swt.widgets.Text;
 import org.eclipse.ui.PlatformUI;
 
+import com.nokia.cpp.internal.api.utils.core.HostOS;
+
 public class AddEditFileToTransferDialog extends StatusDialog {
 
 	private FileToTransfer fFile;
--- a/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/FileTransferTab.java	Wed Dec 09 09:02:51 2009 -0600
+++ b/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/FileTransferTab.java	Wed Dec 09 15:39:08 2009 -0600
@@ -18,6 +18,7 @@
 
 import com.nokia.cdt.debug.cw.symbian.SettingsData;
 import com.nokia.cdt.internal.debug.launch.LaunchPlugin;
+import com.nokia.cpp.internal.api.utils.core.HostOS;
 
 import cwdbg.PreferenceConstants;
 
@@ -90,7 +91,7 @@
 					StringTokenizer tokenizer = new StringTokenizer(filesString, ","); //$NON-NLS-1$
 					while (tokenizer.hasMoreTokens()) {
 						IPath hp = new Path(tokenizer.nextToken());
-						IPath tp = new Path(tokenizer.nextToken());
+						IPath tp = HostOS.createPathFromString(tokenizer.nextToken());
 						// ensure there was no filename before
 						if (tp.getFileExtension() == null) {
 							tp = tp.append(hp.lastSegment());
--- a/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/InstallationTab.java	Wed Dec 09 09:02:51 2009 -0600
+++ b/debuggercdi/com.nokia.cdt.debug.launch/src/com/nokia/cdt/internal/debug/launch/ui/InstallationTab.java	Wed Dec 09 15:39:08 2009 -0600
@@ -144,6 +144,9 @@
 				dialog.setFilterExtensions(new String[] {"*.sis*", "*.*"}); //$NON-NLS-1$ //$NON-NLS-2$
 				dialog.setFilterNames(new String[] {Messages.getString("InstallationTab.27"), Messages.getString("InstallationTab.28")}); //$NON-NLS-1$ //$NON-NLS-2$
 
+				dialog.setFilterPath(new File(hostPath.getText()).getParent());
+				dialog.setFileName(new File(hostPath.getText()).getName());
+				
 				String result = dialog.open();
 				if (result != null && new File(result).exists()) {
 					hostPath.setText(result);