From eb5b70b85cb6c8dfe15368e478407a92c1b301f2 Mon Sep 17 00:00:00 2001 From: Dianne Hackborn Date: Thu, 5 Sep 2013 13:21:24 -0700 Subject: [PATCH] Fix issue #10387684: ArrayIndexOutOfBoundsException in ArrayMap.put Locking of sSharedPrefs was bad -- it was using a per-context lock instead of a static lock. Change-Id: Ib7a929f9fd93f22cc817d32b53ac56523cdad75f --- core/java/android/app/ContextImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java index 5c49dd2b7039b..e776a98a029b7 100644 --- a/core/java/android/app/ContextImpl.java +++ b/core/java/android/app/ContextImpl.java @@ -710,7 +710,7 @@ class ContextImpl extends Context { @Override public SharedPreferences getSharedPreferences(String name, int mode) { SharedPreferencesImpl sp; - synchronized (mSync) { + synchronized (ContextImpl.class) { if (sSharedPrefs == null) { sSharedPrefs = new ArrayMap>(); }