Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 298d559c authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Close cursor after getting data from DB" into oc-mr1-dev

parents 51bde3c8 623faaa0
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -17,6 +17,9 @@

package com.android.settings.search;

import static com.android.settings.search.IndexDatabaseHelper.IndexColumns;
import static com.android.settings.search.IndexDatabaseHelper.Tables.TABLE_PREFS_INDEX;

import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
@@ -28,9 +31,6 @@ import com.android.settings.utils.AsyncLoader;
import java.util.HashSet;
import java.util.Set;

import static com.android.settings.search.IndexDatabaseHelper.IndexColumns;
import static com.android.settings.search.IndexDatabaseHelper.Tables.TABLE_PREFS_INDEX;

/**
 * AsyncTask to retrieve Settings, First party app and any intent based results.
 */
@@ -191,11 +191,13 @@ public class DatabaseResultLoader extends AsyncLoader<Set<? extends SearchResult
     * @return A set of the matching results.
     */
    private Set<SearchResult> query(String whereClause, String[] selection, int baseRank) {
        SQLiteDatabase database = IndexDatabaseHelper.getInstance(mContext).getReadableDatabase();
        final Cursor resultCursor = database.query(TABLE_PREFS_INDEX, SELECT_COLUMNS, whereClause,
                selection, null, null, null);
        final SQLiteDatabase database =
                IndexDatabaseHelper.getInstance(mContext).getReadableDatabase();
        try (Cursor resultCursor = database.query(TABLE_PREFS_INDEX, SELECT_COLUMNS, whereClause,
                selection, null, null, null)) {
            return mConverter.convertCursor(mSiteMapManager, resultCursor, baseRank);
        }
    }

    /**
     * Builds the SQLite WHERE clause that matches all matchColumns for a single query.
+6 −4
Original line number Diff line number Diff line
@@ -34,7 +34,7 @@ import java.util.List;
public class SavedQueryLoader extends AsyncLoader<List<? extends SearchResult>> {

    // Max number of proposed suggestions
    @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
    @VisibleForTesting
    static final int MAX_PROPOSED_SUGGESTIONS = 5;

    private final SQLiteDatabase mDatabase;
@@ -51,16 +51,18 @@ public class SavedQueryLoader extends AsyncLoader<List<? extends SearchResult>>

    @Override
    public List<? extends SearchResult> loadInBackground() {
        Cursor cursor = mDatabase.query(IndexDatabaseHelper.Tables.TABLE_SAVED_QUERIES /* table */,
        try (final Cursor cursor = mDatabase.query(
                IndexDatabaseHelper.Tables.TABLE_SAVED_QUERIES /* table */,
                new String[]{SavedQueriesColumns.QUERY} /* columns */,
                null /* selection */,
                null /* selectionArgs */,
                null /* groupBy */,
                null /* having */,
                "rowId DESC" /* orderBy */,
                String.valueOf(MAX_PROPOSED_SUGGESTIONS) /* limit */);
                String.valueOf(MAX_PROPOSED_SUGGESTIONS) /* limit */)) {
            return convertCursorToResult(cursor);
        }
    }

    private List<SearchResult> convertCursorToResult(Cursor cursor) {
        final List<SearchResult> results = new ArrayList<>();