--- a/jdk/src/java.base/windows/classes/sun/nio/fs/WindowsPath.java Fri Jun 17 16:18:37 2016 +0200
+++ b/jdk/src/java.base/windows/classes/sun/nio/fs/WindowsPath.java Fri Jun 17 17:17:21 2016 +0100
@@ -243,13 +243,13 @@
// relative to default directory
String remaining = path.substring(root.length());
String defaultDirectory = getFileSystem().defaultDirectory();
- String result;
- if (defaultDirectory.endsWith("\\")) {
- result = defaultDirectory + remaining;
+ if (remaining.length() == 0) {
+ return defaultDirectory;
+ } else if (defaultDirectory.endsWith("\\")) {
+ return defaultDirectory + remaining;
} else {
- result = defaultDirectory + "\\" + remaining;
+ return defaultDirectory + "\\" + remaining;
}
- return result;
} else {
// relative to some other drive
String wd;
@@ -412,9 +412,11 @@
}
// append remaining names in child
- for (int j=i; j<cn; j++) {
- result.append(other.getName(j).toString());
- result.append("\\");
+ if (!other.isEmpty()) {
+ for (int j=i; j<cn; j++) {
+ result.append(other.getName(j).toString());
+ result.append("\\");
+ }
}
// drop trailing slash in result