summaryrefslogtreecommitdiffstats
path: root/core/java/android/os/FileUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android/os/FileUtils.java')
-rw-r--r--core/java/android/os/FileUtils.java29
1 files changed, 29 insertions, 0 deletions
diff --git a/core/java/android/os/FileUtils.java b/core/java/android/os/FileUtils.java
index d71c3e6..1dba77d 100644
--- a/core/java/android/os/FileUtils.java
+++ b/core/java/android/os/FileUtils.java
@@ -17,6 +17,7 @@
package android.os;
import android.system.ErrnoException;
+import android.text.TextUtils;
import android.system.Os;
import android.system.OsConstants;
import android.util.Log;
@@ -382,4 +383,32 @@ public class FileUtils {
}
return filePath.startsWith(dirPath);
}
+
+ public static void deleteContents(File dir) {
+ File[] files = dir.listFiles();
+ if (files != null) {
+ for (File file : files) {
+ if (file.isDirectory()) {
+ deleteContents(file);
+ }
+ file.delete();
+ }
+ }
+ }
+
+ /**
+ * Assert that given filename is valid on ext4.
+ */
+ public static boolean isValidExtFilename(String name) {
+ if (TextUtils.isEmpty(name) || ".".equals(name) || "..".equals(name)) {
+ return false;
+ }
+ for (int i = 0; i < name.length(); i++) {
+ final char c = name.charAt(i);
+ if (c == '\0' || c == '/') {
+ return false;
+ }
+ }
+ return true;
+ }
}