diff options
author | mark <mark@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-05-18 17:29:21 +0000 |
---|---|---|
committer | mark <mark@138bc75d-0d04-0410-961f-82ee72b054a4> | 2006-05-18 17:29:21 +0000 |
commit | 64089cc9f030d8ef7972adb5d117e0b23f47d62b (patch) | |
tree | 9f9c470de62ee62fba1331a396450d728d2b1fad /libjava/classpath/java/io/FilePermission.java | |
parent | 96034e28360d660d7a7708807fcbc4b519574d8e (diff) | |
download | gcc-64089cc9f030d8ef7972adb5d117e0b23f47d62b.tar.gz |
Imported GNU Classpath 0.90
* scripts/makemake.tcl: LocaleData.java moved to gnu/java/locale.
* sources.am: Regenerated.
* gcj/javaprims.h: Regenerated.
* Makefile.in: Regenerated.
* gcj/Makefile.in: Regenerated.
* include/Makefile.in: Regenerated.
* testsuite/Makefile.in: Regenerated.
* gnu/java/lang/VMInstrumentationImpl.java: New override.
* gnu/java/net/local/LocalSocketImpl.java: Likewise.
* gnu/classpath/jdwp/VMMethod.java: Likewise.
* gnu/classpath/jdwp/VMVirtualMachine.java: Update to latest
interface.
* java/lang/Thread.java: Add UncaughtExceptionHandler.
* java/lang/reflect/Method.java: Implements GenericDeclaration and
isSynthetic(),
* java/lang/reflect/Field.java: Likewise.
* java/lang/reflect/Constructor.java
* java/lang/Class.java: Implements Type, GenericDeclaration,
getSimpleName() and getEnclosing*() methods.
* java/lang/Class.h: Add new public methods.
* java/lang/Math.java: Add signum(), ulp() and log10().
* java/lang/natMath.cc (log10): New function.
* java/security/VMSecureRandom.java: New override.
* java/util/logging/Logger.java: Updated to latest classpath
version.
* java/util/logging/LogManager.java: New override.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113887 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/classpath/java/io/FilePermission.java')
-rw-r--r-- | libjava/classpath/java/io/FilePermission.java | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/libjava/classpath/java/io/FilePermission.java b/libjava/classpath/java/io/FilePermission.java index 31802c631d6..9a83efba621 100644 --- a/libjava/classpath/java/io/FilePermission.java +++ b/libjava/classpath/java/io/FilePermission.java @@ -1,5 +1,6 @@ /* FilePermission.java -- - Copyright (C) 1998, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. + Copyright (C) 1998, 2000, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. This file is part of GNU Classpath. @@ -44,9 +45,6 @@ public final class FilePermission extends Permission implements Serializable { private static final long serialVersionUID = 7930732926638008763L; - private static final String CURRENT_DIRECTORY = - System.getProperty("user.dir"); - private static final String ALL_FILES = "<<ALL FILES>>"; private boolean readPerm = false; @@ -213,10 +211,18 @@ public final class FilePermission extends Permission implements Serializable FilePermission fp = (FilePermission) p; String f2 = fp.getName(); - if (f1.charAt(0) != File.separatorChar) - f1 = CURRENT_DIRECTORY + f1; - if (f2.charAt(0) != File.separatorChar) - f2 = CURRENT_DIRECTORY + f2; + if (f2.equals(ALL_FILES)) + return false; + + try + { + f1 = new File(f1).getCanonicalPath(); + f2 = new File(f2).getCanonicalPath(); + } + catch (IOException ioe) + { + return false; + } String sub1; |