[kaffe] java.io.File#isDirectory() and symbolic links
Ito Kazumitsu
kaz at maczuka.gcd.org
Sat Dec 25 18:07:12 PST 2004
Hi,
I am afraid java.io.File#isDirectory()'s behavior of handling
symbolic links is not the same as before. I do not know
which is correct, but the problem is I have an application
system which depends on the old behavior.
Test Program:
import java.io.*;
public class TestDirectory {
public static void main(String[] args) throws Exception {
String _filename = args[0];
File file=new File(_filename);
File dir= new File(file.getParent());
System.out.println("file=" + file + " dir=" + dir);
if (!dir.isDirectory())
throw new IOException("not a directory: "+dir);
}
}
bash$ ls -lR /tmp/test0 /tmp/test1
/tmp/test0:
total 4
drwxr-xr-x 2 kaz kaz 4096 Dec 26 10:19 a
/tmp/test0/a:
total 0
/tmp/test1:
total 0
lrwxr-xr-x 1 kaz kaz 12 Dec 26 10:20 a -> /tmp/test0/a
Before:
bash$ /usr/local/kaffe/bin/kaffe -fullversion
...
ChangeLog head : 2004-10-08 Dalibor Topic <robilad at kaffe.org>
bash$ /usr/local/kaffe/bin/kaffe TestDirectory /tmp/test1/a/z
file=/tmp/test1/a/z dir=/tmp/test1/a
bash$
Now:
bash$ ~/work/kaffe-inst/bin/kaffe -fullversion
...
ChangeLog head : 2004-12-22 Guilhem Lavaux <guilhem at kaffe.org>
bash$ ~/work/kaffe-inst/bin/kaffe TestDirectory /tmp/test1/a/z
file=/tmp/test1/a/z dir=/tmp/test1/a
java.io.IOException: not a directory: /tmp/test1/a
at TestDirectory.main (TestDirectory.java:10)
More information about the kaffe
mailing list