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
diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java
index 5c49dd2..e776a98 100644
--- a/core/java/android/app/ContextImpl.java
+++ b/core/java/android/app/ContextImpl.java
@@ -710,7 +710,7 @@
     @Override
     public SharedPreferences getSharedPreferences(String name, int mode) {
         SharedPreferencesImpl sp;
-        synchronized (mSync) {
+        synchronized (ContextImpl.class) {
             if (sSharedPrefs == null) {
                 sSharedPrefs = new ArrayMap<String, ArrayMap<String, SharedPreferencesImpl>>();
             }