Prevent NPE in chips
Bug 8733626
Change-Id: Id74ed7de4f16f9a7e716b4e9f2152dded97a91e9
diff --git a/chips/src/com/android/ex/chips/RecipientEditTextView.java b/chips/src/com/android/ex/chips/RecipientEditTextView.java
index 62a60b0..d2e5806 100644
--- a/chips/src/com/android/ex/chips/RecipientEditTextView.java
+++ b/chips/src/com/android/ex/chips/RecipientEditTextView.java
@@ -417,6 +417,7 @@
return sExcessTopPadding;
}
+ @Override
public <T extends ListAdapter & Filterable> void setAdapter(T adapter) {
super.setAdapter(adapter);
((BaseRecipientAdapter) adapter)
@@ -1459,6 +1460,7 @@
return createAlternatesAdapter(currentChip);
}
+ @Override
protected void onPostExecute(final ListAdapter result) {
int line = getLayout().getLineForOffset(getChipStart(currentChip));
int bottom;
@@ -2490,10 +2492,12 @@
addresses.add(createAddressText(chip.getEntry()));
}
}
+ final BaseRecipientAdapter adapter = (BaseRecipientAdapter) getAdapter();
+ if (adapter == null) {
+ return null;
+ }
RecipientAlternatesAdapter.getMatchingRecipients(getContext(), addresses,
- ((BaseRecipientAdapter) getAdapter()).getAccount(),
- new RecipientMatchCallback() {
-
+ adapter.getAccount(), new RecipientMatchCallback() {
@Override
public void matchesFound(Map<String, RecipientEntry> entries) {
final ArrayList<DrawableRecipientChip> replacements =