Merge "Fix a concurrent modification exception in Slice provider." into pi-dev am: 350c5b3c40
am: b8b9e69a94
Change-Id: I7827b526be72fb2678d7bb662e6c13f722a8aaa9
This commit is contained in:
@@ -32,7 +32,6 @@ import androidx.annotation.VisibleForTesting;
|
|||||||
import android.provider.SettingsSlicesContract;
|
import android.provider.SettingsSlicesContract;
|
||||||
import androidx.core.graphics.drawable.IconCompat;
|
import androidx.core.graphics.drawable.IconCompat;
|
||||||
import android.text.TextUtils;
|
import android.text.TextUtils;
|
||||||
import android.util.ArrayMap;
|
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
import android.util.Pair;
|
import android.util.Pair;
|
||||||
|
|
||||||
@@ -45,6 +44,7 @@ import java.util.Collection;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.WeakHashMap;
|
import java.util.WeakHashMap;
|
||||||
|
import java.util.concurrent.ConcurrentHashMap;
|
||||||
|
|
||||||
import androidx.slice.Slice;
|
import androidx.slice.Slice;
|
||||||
import androidx.slice.SliceProvider;
|
import androidx.slice.SliceProvider;
|
||||||
@@ -116,6 +116,7 @@ public class SettingsSliceProvider extends SliceProvider {
|
|||||||
|
|
||||||
@VisibleForTesting
|
@VisibleForTesting
|
||||||
Map<Uri, SliceData> mSliceWeakDataCache;
|
Map<Uri, SliceData> mSliceWeakDataCache;
|
||||||
|
@VisibleForTesting
|
||||||
Map<Uri, SliceData> mSliceDataCache;
|
Map<Uri, SliceData> mSliceDataCache;
|
||||||
|
|
||||||
public SettingsSliceProvider() {
|
public SettingsSliceProvider() {
|
||||||
@@ -125,7 +126,7 @@ public class SettingsSliceProvider extends SliceProvider {
|
|||||||
@Override
|
@Override
|
||||||
public boolean onCreateSliceProvider() {
|
public boolean onCreateSliceProvider() {
|
||||||
mSlicesDatabaseAccessor = new SlicesDatabaseAccessor(getContext());
|
mSlicesDatabaseAccessor = new SlicesDatabaseAccessor(getContext());
|
||||||
mSliceDataCache = new ArrayMap<>();
|
mSliceDataCache = new ConcurrentHashMap<>();
|
||||||
mSliceWeakDataCache = new WeakHashMap<>();
|
mSliceWeakDataCache = new WeakHashMap<>();
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user