From f6913597247dfbfc0a1c387c976ec9004cb1cccb 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: Ib261a40619c43f7ea2e686057c0702fb5461d843 --- 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>(); }