diff --git a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/resources/UniversalFileTransferUtility.java b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/resources/UniversalFileTransferUtility.java index 21f372ce81f..084e6a3f0dd 100644 --- a/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/resources/UniversalFileTransferUtility.java +++ b/rse/plugins/org.eclipse.rse.files.ui/src/org/eclipse/rse/files/ui/resources/UniversalFileTransferUtility.java @@ -1669,7 +1669,9 @@ public class UniversalFileTransferUtility } path = path.append(absolutePath); - IPath workspacePath = getLocalPathObject(path.toString()); + String pathstr = normalizePath(path.toString(), srcFileOrFolder.getParentRemoteFileSubSystem().getSeparatorChar()); + + IPath workspacePath = getLocalPathObject(pathstr); IResource result = null; if (srcFileOrFolder.isDirectory()) @@ -1684,6 +1686,16 @@ public class UniversalFileTransferUtility return result; } + protected static String normalizePath(String localpath, char rmtSeparator) + { + char localSeparator = File.separatorChar; + if (localSeparator != rmtSeparator) + { + return localpath.replace(rmtSeparator, localSeparator); + } + return localpath; + } + /** * Returns the corresponding temp file location for a local file or folder. * @param srcFileOrFolder the local file or folder.