From 0c1d27cea9b07864b1db1f1d9ed1f305147f1be9 Mon Sep 17 00:00:00 2001 From: Steve McKay Date: Wed, 20 May 2015 13:31:35 -0700 Subject: [PATCH] Explicitly close cursor. BUG=21330700 Change-Id: I6cdfdaa1ac162075157a97a831d7349e34522a4a --- .../src/com/android/documentsui/DirectoryFragment.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java b/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java index 443815be48c0e..8b86423169e7f 100644 --- a/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java +++ b/packages/DocumentsUI/src/com/android/documentsui/DirectoryFragment.java @@ -93,6 +93,8 @@ import com.android.documentsui.model.RootInfo; import com.google.android.collect.Lists; +import libcore.io.IoUtils; + import java.util.ArrayList; import java.util.Collections; import java.util.List; @@ -1264,15 +1266,17 @@ public class DirectoryFragment extends Fragment { Uri itemUri = item.getUri(); if (itemUri != null && DocumentsContract.isDocumentUri(context, itemUri)) { ContentProviderClient client = null; + Cursor cursor = null; try { client = DocumentsApplication.acquireUnstableProviderOrThrow( resolver, itemUri.getAuthority()); - Cursor cursor = client.query(itemUri, null, null, null, null); + cursor = client.query(itemUri, null, null, null, null); cursor.moveToPosition(0); srcDocs.add(DocumentInfo.fromCursor(cursor, itemUri.getAuthority())); } catch (Exception e) { Log.e(TAG, e.getMessage()); } finally { + IoUtils.closeQuietly(cursor); ContentProviderClient.releaseQuietly(client); } }