Fix search crash
Trap NPEs thrown by CP2 query so faulty directory providers don't crash us.
Bug:12893832
Change-Id: Ie88aafb84b6d7129da02d6e0a4457ecfad5ca9b5
(cherry picked from commit ae961fff72fd6612ccad09c9aa63e5ebabd826ea)
diff --git a/src/com/android/contacts/common/list/ProfileAndContactsLoader.java b/src/com/android/contacts/common/list/ProfileAndContactsLoader.java
index 76715db..c19737d 100644
--- a/src/com/android/contacts/common/list/ProfileAndContactsLoader.java
+++ b/src/com/android/contacts/common/list/ProfileAndContactsLoader.java
@@ -58,7 +58,13 @@
}
// ContactsCursor.loadInBackground() can return null; MergeCursor
// correctly handles null cursors.
- final Cursor contactsCursor = super.loadInBackground();
+ Cursor cursor = null;
+ try {
+ cursor = super.loadInBackground();
+ } catch (NullPointerException e) {
+ // Ignore NPEs thrown by providers
+ }
+ final Cursor contactsCursor = cursor;
cursors.add(contactsCursor);
return new MergeCursor(cursors.toArray(new Cursor[cursors.size()])) {
@Override