Make LocaleList constructor non-nullable

This commit makes the LocaleList constructor require non-null
arguments in all cases, and fixes all uses of LocaleList that could
previously pass a null to use getEmptyLocaleList() instead (which is
preferred anyway becaues it avoids an allocation.

Bug: 28460668
Change-Id: I4b8b3cfa82914412731c2b79003951c46cb2afa1
This commit is contained in:
Raph Levien
2016-05-02 12:56:01 -07:00
parent b7d513cb47
commit 10ea92aefa
3 changed files with 5 additions and 5 deletions

View File

@@ -744,7 +744,7 @@ public final class Configuration implements Parcelable, Comparable<Configuration
private void fixUpLocaleList() {
if ((locale == null && !mLocaleList.isEmpty()) ||
(locale != null && !locale.equals(mLocaleList.get(0)))) {
mLocaleList = new LocaleList(locale);
mLocaleList = locale == null ? LocaleList.getEmptyLocaleList() : new LocaleList(locale);
}
}
@@ -1481,7 +1481,7 @@ public final class Configuration implements Parcelable, Comparable<Configuration
* @param loc The locale. Can be null.
*/
public void setLocale(@Nullable Locale loc) {
setLocales(new LocaleList(loc));
setLocales(loc == null ? LocaleList.getEmptyLocaleList() : new LocaleList(loc));
}
/**

View File

@@ -50,7 +50,7 @@ public class LocaleSpan extends MetricAffectingSpan implements ParcelableSpan {
* @see #LocaleSpan(LocaleList)
*/
public LocaleSpan(@Nullable Locale locale) {
mLocales = new LocaleList(locale);
mLocales = locale == null ? LocaleList.getEmptyLocaleList() : new LocaleList(locale);
}
/**

View File

@@ -169,8 +169,8 @@ public final class LocaleList implements Parcelable {
* @throws NullPointerException if any of the input locales is <code>null</code>.
* @throws IllegalArgumentException if any of the input locales repeat.
*/
public LocaleList(@Nullable Locale... list) {
if (list == null || list.length == 0) {
public LocaleList(@NonNull Locale... list) {
if (list.length == 0) {
mList = sEmptyList;
mStringRepresentation = "";
} else {