From e46cb66d4265b6fb8800f9120086151b36011f0f Mon Sep 17 00:00:00 2001 From: Scott Kennedy Date: Wed, 13 Mar 2013 19:25:12 -0700 Subject: Always close this cursor Bug: 8375851 Change-Id: I6aa528091615319722ea7b101bb1cda42c97d122 --- .../com/android/ex/chips/RecipientAlternatesAdapter.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) (limited to 'chips/src/com/android') diff --git a/chips/src/com/android/ex/chips/RecipientAlternatesAdapter.java b/chips/src/com/android/ex/chips/RecipientAlternatesAdapter.java index 465c90e..0693df2 100644 --- a/chips/src/com/android/ex/chips/RecipientAlternatesAdapter.java +++ b/chips/src/com/android/ex/chips/RecipientAlternatesAdapter.java @@ -136,10 +136,17 @@ public class RecipientAlternatesAdapter extends CursorAdapter { final Set matchesNotFound = new HashSet(); if (recipientEntries.size() < addresses.size()) { final List paramsList; - Cursor directoryCursor = context.getContentResolver().query(DirectoryListQuery.URI, - DirectoryListQuery.PROJECTION, null, null, null); - paramsList = BaseRecipientAdapter.setupOtherDirectories(context, directoryCursor, - account); + Cursor directoryCursor = null; + try { + directoryCursor = context.getContentResolver().query(DirectoryListQuery.URI, + DirectoryListQuery.PROJECTION, null, null, null); + paramsList = BaseRecipientAdapter.setupOtherDirectories(context, directoryCursor, + account); + } finally { + if (directoryCursor != null) { + directoryCursor.close(); + } + } // Run a directory query for each unmatched recipient. HashSet unresolvedAddresses = new HashSet(); for (String address : addresses) { -- cgit v1.2.3