FELIX-4969 make cd work with absolute paths. Thanks to Benson Margulies.
git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1697070 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/gogo/command/src/main/java/org/apache/felix/gogo/command/Files.java b/gogo/command/src/main/java/org/apache/felix/gogo/command/Files.java
index d5960e6..43bb4cf 100644
--- a/gogo/command/src/main/java/org/apache/felix/gogo/command/Files.java
+++ b/gogo/command/src/main/java/org/apache/felix/gogo/command/Files.java
@@ -21,6 +21,7 @@
import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
+import java.net.URI;
import java.util.ArrayList;
import java.util.List;
import org.apache.felix.service.command.CommandSession;
@@ -68,7 +69,11 @@
{
return cwd;
}
- cwd = new File(cwd, dir);
+
+ URI curUri = cwd.toURI();
+ URI newUri = curUri.resolve(dir);
+
+ cwd = new File(newUri);
if (!cwd.exists())
{
throw new IOException("Directory does not exist");
@@ -290,4 +295,4 @@
return result;
}
-}
\ No newline at end of file
+}