Merge "Fix a concurrent modification exception in Slice provider." into pi-dev
am: 350c5b3c40
Change-Id: I09d3d0148b58f954cb584b5c5c63059396af8fb1
diff --git a/src/com/android/settings/slices/SettingsSliceProvider.java b/src/com/android/settings/slices/SettingsSliceProvider.java
index df826cb..6d6c0ec 100644
--- a/src/com/android/settings/slices/SettingsSliceProvider.java
+++ b/src/com/android/settings/slices/SettingsSliceProvider.java
@@ -32,7 +32,6 @@
import android.support.annotation.VisibleForTesting;
import android.support.v4.graphics.drawable.IconCompat;
import android.text.TextUtils;
-import android.util.ArrayMap;
import android.util.Log;
import android.util.Pair;
@@ -45,6 +44,7 @@
import java.util.List;
import java.util.Map;
import java.util.WeakHashMap;
+import java.util.concurrent.ConcurrentHashMap;
import androidx.slice.Slice;
import androidx.slice.SliceProvider;
@@ -116,6 +116,7 @@
@VisibleForTesting
Map<Uri, SliceData> mSliceWeakDataCache;
+ @VisibleForTesting
Map<Uri, SliceData> mSliceDataCache;
public SettingsSliceProvider() {
@@ -125,7 +126,7 @@
@Override
public boolean onCreateSliceProvider() {
mSlicesDatabaseAccessor = new SlicesDatabaseAccessor(getContext());
- mSliceDataCache = new ArrayMap<>();
+ mSliceDataCache = new ConcurrentHashMap<>();
mSliceWeakDataCache = new WeakHashMap<>();
return true;
}