aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/io
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/io')
-rw-r--r--libjava/java/io/File.java7
1 files changed, 5 insertions, 2 deletions
diff --git a/libjava/java/io/File.java b/libjava/java/io/File.java
index 858f2b3..a268278 100644
--- a/libjava/java/io/File.java
+++ b/libjava/java/io/File.java
@@ -84,9 +84,9 @@ public class File implements Serializable, Comparable
{
int dupIndex = p.indexOf(dupSeparator);
int plen = p.length();
-
+
// Special case: permit Windows UNC path prefix.
- if (dupSeparator.equals("\\") && dupIndex == 0)
+ if (dupSeparator.equals("\\\\") && dupIndex == 0)
dupIndex = p.indexOf(dupSeparator, 1);
if (dupIndex == -1)
@@ -181,6 +181,9 @@ public class File implements Serializable, Comparable
int last = path.lastIndexOf(separatorChar);
if (last == -1)
return null;
+ // FIXME: POSIX assumption.
+ if (last == 0 && path.charAt (0) == '/')
+ ++last;
return path.substring(0, last);
}