summaryrefslogtreecommitdiffstats
path: root/chromium
diff options
context:
space:
mode:
authorIgnacio Solla <igsolla@google.com>2014-10-28 13:10:41 +0000
committerIgnacio Solla Paula <igsolla@google.com>2014-11-12 23:47:35 +0000
commit8ae9c440cb8835fd8d95c51674b11b3857fc6885 (patch)
tree4145ad40716ab7f263cc84adf3e67d1b8a3f5550 /chromium
parent36b0a0d250253f649c9200b73abbeb61fbc31292 (diff)
downloadandroid_frameworks_webview-8ae9c440cb8835fd8d95c51674b11b3857fc6885.tar.gz
android_frameworks_webview-8ae9c440cb8835fd8d95c51674b11b3857fc6885.tar.bz2
android_frameworks_webview-8ae9c440cb8835fd8d95c51674b11b3857fc6885.zip
[WebView] Remove dependency on FileUtils.
We implement our own version of deleteContents to avoid depending on FileUtils, a hidden Android API. BUG:18152150 Change-Id: I8607e36827bacc38a80a35f65c13f39f561551a0 (cherry picked from commit 5112943866a77868d1987617ed1320e73e2a9ce4)
Diffstat (limited to 'chromium')
-rw-r--r--chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java17
1 files changed, 15 insertions, 2 deletions
diff --git a/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java b/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
index 9f9c3aa..840d306 100644
--- a/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
+++ b/chromium/java/com/android/webview/chromium/WebViewChromiumFactoryProvider.java
@@ -27,7 +27,6 @@ import android.content.Intent;
import android.content.SharedPreferences;
import android.net.Uri;
import android.os.Build;
-import android.os.FileUtils;
import android.os.Looper;
import android.os.StrictMode;
import android.os.SystemProperties;
@@ -144,7 +143,7 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider {
String dataDir = PathUtils.getDataDirectory(ActivityThread.currentApplication());
Log.i(TAG, "WebView package downgraded from " + lastVersion + " to " + currentVersion +
"; deleting contents of " + dataDir);
- FileUtils.deleteContents(new File(dataDir));
+ deleteContents(new File(dataDir));
}
if (lastVersion != currentVersion) {
mWebViewPrefs.edit().putInt(VERSION_CODE_PREF, currentVersion).apply();
@@ -152,6 +151,20 @@ public class WebViewChromiumFactoryProvider implements WebViewFactoryProvider {
// Now safe to use WebView data directory.
}
+ private static void deleteContents(File dir) {
+ File[] files = dir.listFiles();
+ if (files != null) {
+ for (File file : files) {
+ if (file.isDirectory()) {
+ deleteContents(file);
+ }
+ if (!file.delete()) {
+ Log.w(TAG, "Failed to delete " + file);
+ }
+ }
+ }
+ }
+
private void initPlatSupportLibrary() {
DrawGLFunctor.setChromiumAwDrawGLFunction(AwContents.getAwDrawGLFunction());
AwContents.setAwDrawSWFunctionTable(GraphicsUtils.getDrawSWFunctionTable());