diff --git a/core/java/android/content/CursorLoader.java b/core/java/android/content/CursorLoader.java index 01bf9686412ac..850ff7f0cf2b2 100644 --- a/core/java/android/content/CursorLoader.java +++ b/core/java/android/content/CursorLoader.java @@ -55,8 +55,13 @@ public class CursorLoader extends AsyncTaskLoader { } return; } + Cursor oldCursor = mCursor; mCursor = cursor; super.deliverResult(cursor); + + if (oldCursor != null && !oldCursor.isClosed()) { + oldCursor.close(); + } } public CursorLoader(Context context, Uri uri, String[] projection, String selection,