diff options
| author | Jing Ji <jji@google.com> | 2021-08-31 06:24:40 +0000 |
|---|---|---|
| committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-08-31 06:24:40 +0000 |
| commit | e6b762eb94b3d0beacae56b5740cc794c1cc8d24 (patch) | |
| tree | ef31aa5e26373201bf934b16545c02daccb87d7b /core/java/android | |
| parent | 2116b1b4165363370780ecfc62586b19b4295d5d (diff) | |
| parent | c868ea13d0c4b8b651fdda10497f689a0ab934e6 (diff) | |
Merge "Use ArrayMap instead of SparseArray to manage the ProviderKey" into sc-dev am: d5ea86eaf0 am: 637bdf9b9a am: c868ea13d0
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/15664720
Change-Id: Ia67f4ac86d1c436b5aadaaed5bff41ec028f83e3
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/app/ActivityThread.java | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/core/java/android/app/ActivityThread.java b/core/java/android/app/ActivityThread.java index bff1e57c9f22..61da4a7fecc0 100644 --- a/core/java/android/app/ActivityThread.java +++ b/core/java/android/app/ActivityThread.java @@ -466,11 +466,7 @@ public final class ActivityThread extends ClientTransactionHandler @Override public int hashCode() { - return hashCode(authority, userId); - } - - public static int hashCode(final String auth, final int userIdent) { - return ((auth != null) ? auth.hashCode() : 0) ^ userIdent; + return ((authority != null) ? authority.hashCode() : 0) ^ userId; } } @@ -492,7 +488,7 @@ public final class ActivityThread extends ClientTransactionHandler // Note we never removes items from this map but that's okay because there are only so many // users and so many authorities. @GuardedBy("mGetProviderKeys") - final SparseArray<ProviderKey> mGetProviderKeys = new SparseArray<>(); + final ArrayMap<ProviderKey, ProviderKey> mGetProviderKeys = new ArrayMap<>(); final ArrayMap<Activity, ArrayList<OnActivityPausedListener>> mOnPauseListeners = new ArrayMap<Activity, ArrayList<OnActivityPausedListener>>(); @@ -6991,11 +6987,11 @@ public final class ActivityThread extends ClientTransactionHandler } private ProviderKey getGetProviderKey(String auth, int userId) { - final int key = ProviderKey.hashCode(auth, userId); + final ProviderKey key = new ProviderKey(auth, userId); synchronized (mGetProviderKeys) { ProviderKey lock = mGetProviderKeys.get(key); if (lock == null) { - lock = new ProviderKey(auth, userId); + lock = key; mGetProviderKeys.put(key, lock); } return lock; |
