summaryrefslogtreecommitdiff
path: root/core/java/android/webkit/WebViewDatabaseClassic.java
diff options
context:
space:
mode:
authorJohn Reck <jreck@google.com>2012-09-20 13:18:59 -0700
committerJohn Reck <jreck@google.com>2012-09-20 15:25:16 -0700
commit9f9d34552f53c534141584a5ad4a8a49ad7939dc (patch)
tree88f99d0babbe1caab44b49446ba9aabda877c7c8 /core/java/android/webkit/WebViewDatabaseClassic.java
parent4dd3c3797060b35c8e6ebbbdd164c17c6db7b5ec (diff)
Use less static synchronized
Bug: 6482144 Change-Id: I86161e3298101c10a112add406615001561e649e
Diffstat (limited to 'core/java/android/webkit/WebViewDatabaseClassic.java')
-rw-r--r--core/java/android/webkit/WebViewDatabaseClassic.java13
1 files changed, 8 insertions, 5 deletions
diff --git a/core/java/android/webkit/WebViewDatabaseClassic.java b/core/java/android/webkit/WebViewDatabaseClassic.java
index c804b90015c7..be0102874ff8 100644
--- a/core/java/android/webkit/WebViewDatabaseClassic.java
+++ b/core/java/android/webkit/WebViewDatabaseClassic.java
@@ -52,6 +52,7 @@ final class WebViewDatabaseClassic extends WebViewDatabase {
// implemented for b/5265606.
private static WebViewDatabaseClassic sInstance = null;
+ private static final Object sInstanceLock = new Object();
private static SQLiteDatabase sDatabase = null;
@@ -99,7 +100,7 @@ final class WebViewDatabaseClassic extends WebViewDatabase {
// Initially true until the background thread completes.
private boolean mInitialized = false;
- WebViewDatabaseClassic(final Context context) {
+ private WebViewDatabaseClassic(final Context context) {
JniUtil.setContext(context);
new Thread() {
@Override
@@ -111,11 +112,13 @@ final class WebViewDatabaseClassic extends WebViewDatabase {
// Singleton only, use getInstance()
}
- public static synchronized WebViewDatabaseClassic getInstance(Context context) {
- if (sInstance == null) {
- sInstance = new WebViewDatabaseClassic(context);
+ public static WebViewDatabaseClassic getInstance(Context context) {
+ synchronized (sInstanceLock) {
+ if (sInstance == null) {
+ sInstance = new WebViewDatabaseClassic(context);
+ }
+ return sInstance;
}
- return sInstance;
}
private synchronized void init(Context context) {