You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by te...@apache.org on 2006/06/15 17:02:01 UTC

svn commit: r414606 - /incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/io/File.java

Author: tellison
Date: Thu Jun 15 08:02:01 2006
New Revision: 414606

URL: http://svn.apache.org/viewvc?rev=414606&view=rev
Log:
Directory delete should not check read permission (a side-effect of calling isDirectory())

Modified:
    incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/io/File.java

Modified: incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/io/File.java
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/io/File.java?rev=414606&r1=414605&r2=414606&view=diff
==============================================================================
--- incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/io/File.java (original)
+++ incubator/harmony/enhanced/classlib/trunk/modules/luni/src/main/java/java/io/File.java Thu Jun 15 08:02:01 2006
@@ -348,12 +348,16 @@
 	 * @see java.lang.SecurityManager#checkDelete
 	 */
 	public boolean delete() {
-		SecurityManager security = System.getSecurityManager();
-		if (security != null)
-			security.checkDelete(path);
-		return isDirectory() ? deleteDirImpl(properPath(true))
-				: deleteFileImpl(properPath(true));
-	}
+        SecurityManager security = System.getSecurityManager();
+        if (security != null) {
+            security.checkDelete(path);
+        }
+        byte[] propPath = properPath(true);
+        if ((path.length() != 0) && isDirectoryImpl(propPath)) {
+            return deleteDirImpl(propPath);
+        }
+        return deleteFileImpl(propPath);
+    }
 
 	private native boolean deleteDirImpl(byte[] filePath);