summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVitaliy Tomin <highwaystar.ru@gmail.com>2017-04-26 15:25:20 +0800
committerAdrian DC <radian.dc@gmail.com>2017-04-26 08:32:46 +0000
commitc9e76546ff03ac87ffb6694d67ed2ed171964196 (patch)
treee616c5a57fd3588aa0de4c823911bd4318239a2a
parent99649a575c74b7a76308cf955502a0bf33954a35 (diff)
downloadandroid_packages_apps_Trebuchet-c9e76546ff03ac87ffb6694d67ed2ed171964196.tar.gz
android_packages_apps_Trebuchet-c9e76546ff03ac87ffb6694d67ed2ed171964196.tar.bz2
android_packages_apps_Trebuchet-c9e76546ff03ac87ffb6694d67ed2ed171964196.zip
Trebuchet: Do not crash if normalized string for sorting is empty
* Fixes emty string leads to java.lang.StringIndexOutOfBoundsException: length=0; regionStart=0; regionLength=1 at java.lang.String.substring(String.java:1931) at com.android.launcher3.compat.BaseAlphabeticIndex.getBucketIndex(AlphabeticIndexCompat.java:38) Change-Id: I9879b33e02a67aed4fb63e85921a51551c2ef208
-rw-r--r--src/com/android/launcher3/compat/AlphabeticIndexCompat.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/com/android/launcher3/compat/AlphabeticIndexCompat.java b/src/com/android/launcher3/compat/AlphabeticIndexCompat.java
index 0d249c083..ee1f4d57b 100644
--- a/src/com/android/launcher3/compat/AlphabeticIndexCompat.java
+++ b/src/com/android/launcher3/compat/AlphabeticIndexCompat.java
@@ -35,6 +35,9 @@ class BaseAlphabeticIndex {
}
String asciiName = Normalizer.normalize(s, Normalizer.Form.NFD)
.replaceAll("[^\\p{ASCII}]", "");
+ if (asciiName.isEmpty()) {
+ return UNKNOWN_BUCKET_INDEX;
+ }
int index = BUCKETS.indexOf(asciiName.substring(0, 1).toUpperCase());
if (index != -1) {
return index;