Merge "Call CardDatabaseHelper.getInstance() when used and not in onCreate" am: 97b4621c68 am: 2b7eb9eff6 am: 38f8c61722

Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/1928158

Change-Id: I4effb7ecf2aeec745a6e6918ca80f76ef1d58478
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/src/com/android/settings/homepage/contextualcards/CardContentProvider.java b/src/com/android/settings/homepage/contextualcards/CardContentProvider.java
index 75ec651..7ad5506 100644
--- a/src/com/android/settings/homepage/contextualcards/CardContentProvider.java
+++ b/src/com/android/settings/homepage/contextualcards/CardContentProvider.java
@@ -65,11 +65,8 @@
         URI_MATCHER.addURI(CARD_AUTHORITY, CardDatabaseHelper.CARD_TABLE, MATCH_CARDS);
     }
 
-    private CardDatabaseHelper mDBHelper;
-
     @Override
     public boolean onCreate() {
-        mDBHelper = CardDatabaseHelper.getInstance(getContext());
         return true;
     }
 
@@ -84,7 +81,8 @@
     public int bulkInsert(Uri uri, ContentValues[] values) {
         final StrictMode.ThreadPolicy oldPolicy = StrictMode.getThreadPolicy();
         int numInserted = 0;
-        final SQLiteDatabase database = mDBHelper.getWritableDatabase();
+        final CardDatabaseHelper DBHelper = CardDatabaseHelper.getInstance(getContext());
+        final SQLiteDatabase database = DBHelper.getWritableDatabase();
         final boolean keepDismissalTimestampBeforeDeletion = getContext().getResources()
                 .getBoolean(R.bool.config_keep_contextual_card_dismissal_timestamp);
         final Map<String, Long> dismissedTimeMap = new ArrayMap<>();
@@ -168,7 +166,8 @@
             final SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
             final String table = getTableFromMatch(uri);
             queryBuilder.setTables(table);
-            final SQLiteDatabase database = mDBHelper.getReadableDatabase();
+            final CardDatabaseHelper DBHelper = CardDatabaseHelper.getInstance(getContext());
+            final SQLiteDatabase database = DBHelper.getReadableDatabase();
             final Cursor cursor = queryBuilder.query(database,
                     projection, selection, selectionArgs, null /* groupBy */, null /* having */,
                     sortOrder);