From 0ced43354fe55cfeed8e70eefc1110209ffb8c5f Mon Sep 17 00:00:00 2001 From: Ranjit Mathew Date: Fri, 24 Jan 2003 21:57:00 +0000 Subject: [PATCH] re PR java/9253 (on win32, java.io.File.listFiles("C:\\") returns pwd instead of the root content of C:) 2003-01-24 Ranjit Mathew Fixes PR java/9253: * java/io/natFileWin32.cc (performList): Append only "*.*" if the canonical file path already has a "\" at the end. From-SVN: r61736 --- libjava/ChangeLog | 6 ++++++ libjava/java/io/natFileWin32.cc | 6 ++++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/libjava/ChangeLog b/libjava/ChangeLog index 1b9a81ce5e2..36cac209702 100644 --- a/libjava/ChangeLog +++ b/libjava/ChangeLog @@ -1,3 +1,9 @@ +2003-01-24 Ranjit Mathew + + Fixes PR java/9253: + * java/io/natFileWin32.cc (performList): Append only "*.*" + if the canonical file path already has a "\" at the end. + 2003-01-24 Tom Tromey * defineclass.cc (handleMethodsEnd): Precompute code for static diff --git a/libjava/java/io/natFileWin32.cc b/libjava/java/io/natFileWin32.cc index 9bf0eefb74e..5245feb5a1e 100644 --- a/libjava/java/io/natFileWin32.cc +++ b/libjava/java/io/natFileWin32.cc @@ -146,8 +146,10 @@ java::io::File::performList (java::io::FilenameFilter *filter, return NULL; char *buf = (char *) __builtin_alloca (JvGetStringUTFLength (canon) + 5); jsize total = JvGetStringUTFRegion (canon, 0, canon->length(), buf); - // FIXME? - strcpy(&buf[total], "\\*.*"); + if (buf[total-1] == '\\') + strcpy (&buf[total], "*.*"); + else + strcpy (&buf[total], "\\*.*"); WIN32_FIND_DATA data; HANDLE handle = FindFirstFile (buf, &data); -- 2.30.2