Create db path if it doesn't exit
Bug: 3241808
Make sure the directory the caller is trying to open the icon db
in actually exists and create it if it doesn't.
Change-Id: Ie5e4a09210e9430edc318846a551542119969053
diff --git a/core/java/android/webkit/WebIconDatabase.java b/core/java/android/webkit/WebIconDatabase.java
index bb9ec48..54dfab3 100644
--- a/core/java/android/webkit/WebIconDatabase.java
+++ b/core/java/android/webkit/WebIconDatabase.java
@@ -24,6 +24,7 @@
import android.provider.Browser;
import android.util.Log;
+import java.io.File;
import java.util.HashMap;
import java.util.Vector;
@@ -194,13 +195,16 @@
/**
* Open a the icon database and store the icons in the given path.
* @param path The directory path where the icon database will be stored.
- * @return True if the database was successfully opened or created in
- * the given path.
*/
public void open(String path) {
if (path != null) {
+ // Make the directories and parents if they don't exist
+ File db = new File(path);
+ if (!db.exists()) {
+ db.mkdirs();
+ }
mEventHandler.postMessage(
- Message.obtain(null, EventHandler.OPEN, path));
+ Message.obtain(null, EventHandler.OPEN, db.getAbsolutePath()));
}
}