2005-04-20 Michael Koch <konqueror@gmx.de>
authorMichael Koch <konqueror@gmx.de>
Wed, 20 Apr 2005 09:02:29 +0000 (09:02 +0000)
committerMichael Koch <mkoch@gcc.gnu.org>
Wed, 20 Apr 2005 09:02:29 +0000 (09:02 +0000)
* java/io/FilePermission.java
(serialVersionUID): Made private.
(ALL_FILES): New constant.
(implies): Handle '<<ALL FILES>>' case.

From-SVN: r98447

libjava/ChangeLog
libjava/java/io/FilePermission.java

index 0fb344c9e78960397a4ee3d043776bfaec46791d..c05188ba810ce311442ba7dfe45b9829c271713e 100644 (file)
@@ -1,3 +1,10 @@
+2005-04-20  Michael Koch  <konqueror@gmx.de>
+
+       * java/io/FilePermission.java
+       (serialVersionUID): Made private.
+       (ALL_FILES): New constant.
+       (implies): Handle '<<ALL FILES>>' case.
+
 2005-04-20  Sven de Marothy  <sven@physto.se>
 
        * gnu/java/awt/peer/gtk/GdkGraphics.java:
index 9151bf66964832da9f5c1c56341813aa9c3b9b70..6534cd85ce1147b9767721065df4d39a8437984d 100644 (file)
@@ -1,5 +1,5 @@
-/* java.lang.FilePermission
-   Copyright (C) 1998, 2000, 2003, 2004 Free Software Foundation, Inc.
+/* FilePermission.java --
+   Copyright (C) 1998, 2000, 2003, 2004, 2005  Free Software Foundation, Inc.
 
 This file is part of GNU Classpath.
 
@@ -7,7 +7,7 @@ GNU Classpath is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation; either version 2, or (at your option)
 any later version.
+
 GNU Classpath is distributed in the hope that it will be useful, but
 WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
@@ -42,11 +42,13 @@ import java.security.Permission;
 
 public final class FilePermission extends Permission implements Serializable
 {
-  static final long serialVersionUID = 7930732926638008763L;
+  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;
   private boolean writePerm = false;
   private boolean executePerm = false;
@@ -200,14 +202,15 @@ public final class FilePermission extends Permission implements Serializable
    */
   public boolean implies(Permission p) 
   {
-    FilePermission fp;
-
     if (! (p instanceof FilePermission))
       return false;
 
-    fp = (FilePermission) p;
-
     String f1 = getName();
+
+    if (f1.equals(ALL_FILES))
+      return true;
+    
+    FilePermission fp = (FilePermission) p;
     String f2 = fp.getName();
 
     if (f1.charAt(0) != File.separatorChar)