FULL PRODUCT VERSION :
All of JDK 8, JDK7 u51 and OpenJDK 7u51 have the problem
ADDITIONAL OS VERSION INFORMATION :
Ubuntu Linux 13.10, x86-64
A DESCRIPTION OF THE PROBLEM :
fge@alustriel:/tmp$ cat Foo.java
import java.nio.file.Paths;
public class Foo
{
public static void main(final String... args)
{
System.out.printf("'%s'\n", Paths.get("").normalize());
System.exit(0);
}
}
fge@alustriel:/tmp$ javac Foo.java
fge@alustriel:/tmp$ java Foo
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at sun.nio.fs.UnixPath.normalize(UnixPath.java:508)
at Foo.main(Foo.java:8)
REGRESSION. Last worked in version 6u45
ADDITIONAL REGRESSION INFORMATION:
Does NOT happen on Windows systems. I don't have other Unix systems than Linux to test on.
I only discovered the bug recently... I set the "prior working release" to the latest JDK 6 version since it didn't have Path...
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
See description...
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
Return an empty path
ACTUAL -
See description...
ERROR MESSAGES/STACK TRACES THAT OCCUR :
See description...
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import java.nio.file.Paths;
public class Foo
{
public static void main(final String... args)
{
System.out.printf("'%s'\n", Paths.get("").normalize());
System.exit(0);
}
}
---------- END SOURCE ----------