aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/io
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2001-10-08 20:42:13 +0000
committerTom Tromey <tromey@gcc.gnu.org>2001-10-08 20:42:13 +0000
commitd281f2a236a91c98dbe0399a18bc9557c1620df2 (patch)
treea1b91374701e0e8c840428cf94cc685c9a767e94 /libjava/java/io
parentf3ca28bffbf80a70183e57c04551d85a42e8e752 (diff)
downloadgcc-d281f2a236a91c98dbe0399a18bc9557c1620df2.zip
gcc-d281f2a236a91c98dbe0399a18bc9557c1620df2.tar.gz
gcc-d281f2a236a91c98dbe0399a18bc9557c1620df2.tar.bz2
re PR libgcj/4481 (java.io.File.getParent not working properly)
Fix for PR libgcj/4481: * java/io/File.java (getParent): Handle case where path is "/". (normalizePath): Use correct string for UNC leader. From-SVN: r46093
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);
}