From 3af5c6b002968a44b964d91cdca26056c3aaf8c3 Mon Sep 17 00:00:00 2001 From: zachh Date: Thu, 9 Nov 2017 11:52:13 -0800 Subject: Filter out contacts with null primary display names in search. Bug: 68848807 Test: unit PiperOrigin-RevId: 175190786 Change-Id: I15b525951cb87afb8b48f3bdb2174605c94c99cf --- .../dialer/searchfragment/cp2/SearchContactsCursorLoader.java | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java') diff --git a/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java b/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java index 35518019e..2b7af1131 100644 --- a/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java +++ b/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java @@ -43,8 +43,19 @@ public final class SearchContactsCursorLoader extends CursorLoader { this.query = query; } + /** + * Note: ContactsProvider can make no guarantee that any given field is non-null, and display name + * has been observed to be null in the wild, though it is unclear when that might happen (possibly + * a third-party is inserting such data). See a bug. + * + *

We skip showing contacts without a display name because there is no UI treatment for showing + * such results. (Note that even contacts with only a number still have a display name set to the + * number.) + */ private static String whereStatement() { return (Phone.NUMBER + " IS NOT NULL") + + " AND " + + (Data.DISPLAY_NAME_PRIMARY + " IS NOT NULL") + " AND " + Data.MIMETYPE + " IN (\'" -- cgit v1.2.3