2
0
mirror of https://github.com/KDE/kdeconnect-android synced 2025-09-01 14:45:08 +00:00

Make sure the cursor is always closed

This commit is contained in:
Albert Vaca
2018-10-28 12:17:52 +01:00
parent 555e3a3f03
commit be6b108e64

View File

@@ -83,7 +83,7 @@ class AppDatabase {
void setEnabled(String packageName, boolean isEnabled) { void setEnabled(String packageName, boolean isEnabled) {
String[] columns = new String[]{KEY_IS_ENABLED}; String[] columns = new String[]{KEY_IS_ENABLED};
Cursor res = ourDatabase.query(DATABASE_TABLE, columns, KEY_PACKAGE_NAME + " =? ", new String[]{packageName}, null, null, null); Cursor res = ourDatabase.query(DATABASE_TABLE, columns, KEY_PACKAGE_NAME + " =? ", new String[]{packageName}, null, null, null);
try {
ContentValues cv = new ContentValues(); ContentValues cv = new ContentValues();
cv.put(KEY_IS_ENABLED, isEnabled ? "true" : "false"); cv.put(KEY_IS_ENABLED, isEnabled ? "true" : "false");
if (res.getCount() > 0) { if (res.getCount() > 0) {
@@ -92,8 +92,10 @@ class AppDatabase {
cv.put(KEY_PACKAGE_NAME, packageName); cv.put(KEY_PACKAGE_NAME, packageName);
ourDatabase.insert(DATABASE_TABLE, null, cv); ourDatabase.insert(DATABASE_TABLE, null, cv);
} }
} finally {
res.close(); res.close();
} }
}
void setAllEnabled(boolean enabled) { void setAllEnabled(boolean enabled) {
ourDatabase.execSQL("UPDATE " + DATABASE_TABLE + " SET " + KEY_IS_ENABLED + "='" + enabled + "'"); ourDatabase.execSQL("UPDATE " + DATABASE_TABLE + " SET " + KEY_IS_ENABLED + "='" + enabled + "'");
@@ -102,6 +104,7 @@ class AppDatabase {
boolean isEnabled(String packageName) { boolean isEnabled(String packageName) {
String[] columns = new String[]{KEY_IS_ENABLED}; String[] columns = new String[]{KEY_IS_ENABLED};
Cursor res = ourDatabase.query(DATABASE_TABLE, columns, KEY_PACKAGE_NAME + " =? ", new String[]{packageName}, null, null, null); Cursor res = ourDatabase.query(DATABASE_TABLE, columns, KEY_PACKAGE_NAME + " =? ", new String[]{packageName}, null, null, null);
try {
boolean result; boolean result;
if (res.getCount() > 0) { if (res.getCount() > 0) {
res.moveToFirst(); res.moveToFirst();
@@ -109,8 +112,10 @@ class AppDatabase {
} else { } else {
result = getDefaultStatus(packageName); result = getDefaultStatus(packageName);
} }
res.close();
return result; return result;
} finally {
res.close();
}
} }
private boolean getDefaultStatus(String packageName) { private boolean getDefaultStatus(String packageName) {