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

Commit 903239ff authored by Dmitri Plotnikov's avatar Dmitri Plotnikov
Browse files

Fixing cache reset in GroupingListAdapter (Call Log)

Bug: 2479978
Change-Id: I70a17d13cedbd8986cd6dca2b218c7180dc17470
parent e287d61e
Loading
Loading
Loading
Loading
+7 −3
Original line number Diff line number Diff line
@@ -19,7 +19,6 @@ package com.android.contacts;
import com.android.internal.util.ArrayUtils;

import android.content.Context;
import android.database.CharArrayBuffer;
import android.database.ContentObserver;
import android.database.Cursor;
import android.database.DataSetObserver;
@@ -163,6 +162,9 @@ public abstract class GroupingListAdapter extends BaseAdapter {
            mCursor.close();
        }
        mCursor = cursor;
        resetCache();
        findGroups();

        if (cursor != null) {
            cursor.registerContentObserver(mChangeObserver);
            cursor.registerDataSetObserver(mDataSetObserver);
@@ -173,8 +175,6 @@ public abstract class GroupingListAdapter extends BaseAdapter {
            notifyDataSetInvalidated();
        }

        resetCache();
        findGroups();
    }

    public Cursor getCursor() {
@@ -418,6 +418,10 @@ public abstract class GroupingListAdapter extends BaseAdapter {
    }

    public Object getItem(int position) {
        if (mCursor == null) {
            return null;
        }

        obtainPositionMetadata(mPositionMetadata, position);
        if (mCursor.moveToPosition(mPositionMetadata.cursorPosition)) {
            return mCursor;
+1 −4
Original line number Diff line number Diff line
@@ -758,10 +758,7 @@ public class RecentCallsListActivity extends ListActivity
    protected void onDestroy() {
        super.onDestroy();
        mAdapter.stopRequestProcessing();
        Cursor cursor = mAdapter.getCursor();
        if (cursor != null && !cursor.isClosed()) {
            cursor.close();
        }
        mAdapter.changeCursor(null);
    }

    @Override