diff options
author | Cyril Lee <cyrillee@google.com> | 2022-05-04 07:08:53 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2022-05-04 07:08:53 +0000 |
commit | 2dc3c73c8d86828d36d6af7975b792db1e1b3826 (patch) | |
tree | 8bf1cca3c6a8489ef15a8084f45a3b3a0f43c0ce | |
parent | d77b797aa56f64bbb99ca532c16d0112a97841fe (diff) | |
parent | a6448a12de0ad3f81320679d9c71d45e9a6b9b94 (diff) | |
download | localepicker-android13-qpr2-release.tar.gz |
Fix getLevelLocales crash due to modify collection during iteration am: fa53f6ee90 am: a6448a12deandroid-13.0.0_r49android-13.0.0_r48android-13.0.0_r47android-13.0.0_r46android-13.0.0_r45android-13.0.0_r44android-13.0.0_r43android-13.0.0_r42android-13.0.0_r41android-13.0.0_r40android-13.0.0_r39android-13.0.0_r38android-13.0.0_r37android-13.0.0_r36android-13.0.0_r35android-13.0.0_r34android-13.0.0_r33android-13.0.0_r32android13-qpr2-s9-releaseandroid13-qpr2-s8-releaseandroid13-qpr2-s7-releaseandroid13-qpr2-s6-releaseandroid13-qpr2-s5-releaseandroid13-qpr2-s3-releaseandroid13-qpr2-s2-releaseandroid13-qpr2-s12-releaseandroid13-qpr2-s11-releaseandroid13-qpr2-s10-releaseandroid13-qpr2-s1-releaseandroid13-qpr2-releaseandroid13-qpr2-b-s1-releaseandroid13-d4-s2-releaseandroid13-d4-s1-releaseandroid13-d4-release
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/opt/localepicker/+/18124562
Change-Id: Ie4d662751c6eadaa3282d203e9f536759d3e6a3c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | src/com/android/localepicker/LocaleStore.java | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/com/android/localepicker/LocaleStore.java b/src/com/android/localepicker/LocaleStore.java index ff4f85a..c799bd3 100644 --- a/src/com/android/localepicker/LocaleStore.java +++ b/src/com/android/localepicker/LocaleStore.java @@ -27,9 +27,9 @@ import android.telephony.TelephonyManager; import androidx.annotation.VisibleForTesting; import java.io.Serializable; +import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; -import java.util.IllformedLocaleException; import java.util.Locale; import java.util.Set; @@ -352,7 +352,8 @@ public class LocaleStore { String parentId = parent == null ? null : parent.getId(); HashSet<LocaleInfo> result = new HashSet<>(); - for (LocaleStore.LocaleInfo li : sLocaleCache.values()) { + ArrayList<LocaleStore.LocaleInfo> localeInfos = new ArrayList<>(sLocaleCache.values()); + for (LocaleStore.LocaleInfo li : localeInfos) { int level = getLevel(ignorables, li, translatedOnly); if (level == 2) { if (parent != null) { // region selection |