From 559ac8a72a6ee6265199d90baa2f99b308cd0844 Mon Sep 17 00:00:00 2001 From: Doris Ling Date: Wed, 20 Dec 2017 16:38:45 -0800 Subject: [PATCH] Catch NullPointerException in PreIndexDataCollector. Null pointer exception is thrown from ContentProviderNative when we query the non indexable keys. Added a try-catch block to prevent it from crashing. Change-Id: I45c1e34bb81a4739ae2eb5dd19a08781ab7beeb1 Fix: 70900076 Test: manual --- .../settings/search/indexing/PreIndexDataCollector.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/com/android/settings/search/indexing/PreIndexDataCollector.java b/src/com/android/settings/search/indexing/PreIndexDataCollector.java index a4e11317f23..63000b48744 100644 --- a/src/com/android/settings/search/indexing/PreIndexDataCollector.java +++ b/src/com/android/settings/search/indexing/PreIndexDataCollector.java @@ -287,8 +287,14 @@ public class PreIndexDataCollector { String[] projection) { final ContentResolver resolver = packageContext.getContentResolver(); - final Cursor cursor = resolver.query(uri, projection, null, null, null); final List result = new ArrayList<>(); + Cursor cursor; + try { + cursor = resolver.query(uri, projection, null, null, null); + } catch (NullPointerException e) { + Log.e(TAG, "Exception querying the keys!", e); + return result; + } if (cursor == null) { Log.w(TAG, "Cannot add index data for Uri: " + uri.toString());