mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-10 18:20:51 +08:00
File.java File (String,String): Fixed handling of empty path.
2004-08-30 Jeroen Frijters <jeroen@frijters.net> * java/io/File.java File(String,String): Fixed handling of empty path. From-SVN: r86774
This commit is contained in:
parent
89b8abbf7d
commit
2c64dead9e
@ -1,3 +1,8 @@
|
||||
2004-08-30 Jeroen Frijters <jeroen@frijters.net>
|
||||
|
||||
* java/io/File.java File(String,String): Fixed handling of empty
|
||||
path.
|
||||
|
||||
2004-08-30 Casey Marshall <csm@gnu.org>
|
||||
|
||||
Author e-mail updated for all files.
|
||||
|
@ -361,14 +361,37 @@ public class File implements Serializable, Comparable
|
||||
{
|
||||
if (name == null)
|
||||
throw new NullPointerException();
|
||||
if (dirPath != null && dirPath.length() > 0)
|
||||
if (dirPath != null)
|
||||
{
|
||||
// Try to be smart about the number of separator characters.
|
||||
if (dirPath.charAt(dirPath.length() - 1) == separatorChar
|
||||
|| name.length() == 0)
|
||||
path = normalizePath(dirPath + name);
|
||||
if (dirPath.length() > 0)
|
||||
{
|
||||
// Try to be smart about the number of separator characters.
|
||||
if (dirPath.charAt(dirPath.length() - 1) == separatorChar
|
||||
|| name.length() == 0)
|
||||
path = normalizePath(dirPath + name);
|
||||
else
|
||||
path = normalizePath(dirPath + separatorChar + name);
|
||||
}
|
||||
else
|
||||
path = normalizePath(dirPath + separatorChar + name);
|
||||
{
|
||||
// If dirPath is empty, use a system dependant
|
||||
// default prefix.
|
||||
// Note that the leading separators in name have
|
||||
// to be chopped off, to prevent them forming
|
||||
// a UNC prefix on Windows.
|
||||
if (separatorChar == '\\' /* TODO use ON_WINDOWS */)
|
||||
{
|
||||
int skip = 0;
|
||||
while(name.length() > skip
|
||||
&& (name.charAt(skip) == separatorChar
|
||||
|| name.charAt(skip) == '/'))
|
||||
{
|
||||
skip++;
|
||||
}
|
||||
name = name.substring(skip);
|
||||
}
|
||||
path = normalizePath(separatorChar + name);
|
||||
}
|
||||
}
|
||||
else
|
||||
path = normalizePath(name);
|
||||
|
Loading…
x
Reference in New Issue
Block a user