Fix Cursor leak in SettingsBackupAgent.

Bug: 5434060

Change-Id: I805695a30d6778d0c7302e63bcfe3dc1a38488f4
This commit is contained in:
Jeff Brown
2011-10-09 15:24:53 -07:00
parent d5875d98f0
commit 1d8e7d640a

View File

@@ -350,16 +350,21 @@ public class SettingsBackupAgent extends BackupAgentHelper {
private byte[] getSystemSettings() {
Cursor cursor = getContentResolver().query(Settings.System.CONTENT_URI, PROJECTION, null,
null, null);
byte[] result = extractRelevantValues(cursor, Settings.System.SETTINGS_TO_BACKUP);
cursor.close();
return result;
try {
return extractRelevantValues(cursor, Settings.System.SETTINGS_TO_BACKUP);
} finally {
cursor.close();
}
}
private byte[] getSecureSettings() {
Cursor cursor = getContentResolver().query(Settings.Secure.CONTENT_URI, PROJECTION, null,
null, null);
byte[] result = extractRelevantValues(cursor, Settings.Secure.SETTINGS_TO_BACKUP);
return result;
try {
return extractRelevantValues(cursor, Settings.Secure.SETTINGS_TO_BACKUP);
} finally {
cursor.close();
}
}
private void restoreSettings(BackupDataInput data, Uri contentUri) {