aboutsummaryrefslogtreecommitdiff
path: root/libjava/java
diff options
context:
space:
mode:
authorMohan Embar <gnustuff@thisiscool.com>2003-10-31 03:02:47 +0000
committerMohan Embar <membar@gcc.gnu.org>2003-10-31 03:02:47 +0000
commitb82183ab3ffc0a17b38c7d1f18377049e70459a1 (patch)
tree38683066a305e6866f2377746940af6597e882da /libjava/java
parent9373164a48dc470b44c1ec9431213ce8c06323e5 (diff)
downloadgcc-b82183ab3ffc0a17b38c7d1f18377049e70459a1.zip
gcc-b82183ab3ffc0a17b38c7d1f18377049e70459a1.tar.gz
gcc-b82183ab3ffc0a17b38c7d1f18377049e70459a1.tar.bz2
re PR libgcj/6652 (new java.io.File("").getCanonicalFile() throws exception)
PR libgcj/6652: * java/io/natFileWin32.cc (getCanonicalPath): Treat "" like ".". From-SVN: r73115
Diffstat (limited to 'libjava/java')
-rw-r--r--libjava/java/io/natFileWin32.cc7
1 files changed, 6 insertions, 1 deletions
diff --git a/libjava/java/io/natFileWin32.cc b/libjava/java/io/natFileWin32.cc
index cee6b00..1559043 100644
--- a/libjava/java/io/natFileWin32.cc
+++ b/libjava/java/io/natFileWin32.cc
@@ -109,10 +109,15 @@ jstring
java::io::File::getCanonicalPath (void)
{
JV_TEMP_UTF_STRING (cpath, path);
+
+ // If the filename is blank, use the current directory.
+ const char* thepath = cpath.buf();
+ if (*thepath == '\0')
+ thepath = ".";
LPTSTR unused;
char buf2[MAX_PATH];
- if(!GetFullPathName(cpath, MAX_PATH, buf2, &unused))
+ if(!GetFullPathName(thepath, MAX_PATH, buf2, &unused))
throw new IOException (JvNewStringLatin1 ("GetFullPathName failed"));
// FIXME: what encoding to assume for file names? This affects many