diff options
author | Joachim Sauer <jsauer@google.com> | 2017-08-24 12:48:53 +0100 |
---|---|---|
committer | Joachim Sauer <jsauer@google.com> | 2017-08-31 17:18:37 +0100 |
commit | 917e8dade7a9c12e88dd65c6cebd7bf74d0ad1ec (patch) | |
tree | dd4ad113c6a686397fa86d327d68aaa2b1f7601b /android_icu4j | |
parent | 0a1fd6ff3406eadee6996f2a3b15a3795a4ae592 (diff) | |
download | icu-917e8dade7a9c12e88dd65c6cebd7bf74d0ad1ec.tar.gz |
Fix AlphabeticIndex.addIndexExemplars.
AlphabeticIndex has fallback logic when a given locale has no
ExemplarCharactersIndex values where it tries to generate labels from
the exemplar characters.
However that logic was never executed because it was guarded by a wrong
check (exemplars != null instead of !exemplars.isEmpty()).
This is a local patch until the official upstream solution can be
applied (see http://bugs.icu-project.org/trac/ticket/13331)
Bug: 64953401
Test: CtsIcuTestCases
Test: libcore.icu.AlphabeticIndexTest
Change-Id: Ic87db6ef49e1d9ad6d9f5f6d8146f23c332864b3
Diffstat (limited to 'android_icu4j')
-rw-r--r-- | android_icu4j/src/main/java/android/icu/text/AlphabeticIndex.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/android_icu4j/src/main/java/android/icu/text/AlphabeticIndex.java b/android_icu4j/src/main/java/android/icu/text/AlphabeticIndex.java index d65eee4da..68e9a2cd3 100644 --- a/android_icu4j/src/main/java/android/icu/text/AlphabeticIndex.java +++ b/android_icu4j/src/main/java/android/icu/text/AlphabeticIndex.java @@ -504,7 +504,8 @@ public final class AlphabeticIndex<V> implements Iterable<Bucket<V>> { */ private void addIndexExemplars(ULocale locale) { UnicodeSet exemplars = LocaleData.getExemplarSet(locale, 0, LocaleData.ES_INDEX); - if (exemplars != null) { + // Android-changed: check for empty exemplar sets (http://b/64953401). + if (exemplars != null && !exemplars.isEmpty()) { initialLabels.addAll(exemplars); return; } |