Dbrant has uploaded a new change for review.
https://gerrit.wikimedia.org/r/277809
Change subject: Always make sure to close Cursors.
......................................................................
Always make sure to close Cursors.
Change-Id: I8350cade4550adb4b4afb6be5e2fe61037f2e335
---
M app/src/main/java/org/wikipedia/database/http/HttpRowDao.java
M
app/src/main/java/org/wikipedia/page/bottomcontent/MainPageReadMoreTopicTask.java
M app/src/main/java/org/wikipedia/page/gallery/MediaDownloadReceiver.java
3 files changed, 30 insertions(+), 14 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/apps/android/wikipedia
refs/changes/09/277809/1
diff --git a/app/src/main/java/org/wikipedia/database/http/HttpRowDao.java
b/app/src/main/java/org/wikipedia/database/http/HttpRowDao.java
index d21fb70..d8b2cd4 100644
--- a/app/src/main/java/org/wikipedia/database/http/HttpRowDao.java
+++ b/app/src/main/java/org/wikipedia/database/http/HttpRowDao.java
@@ -143,7 +143,11 @@
+ UserOptionDatabaseTable.Col.HTTP.transactionId() + " == " +
DefaultAsyncRow.NO_TRANSACTION_ID;
String sortOrder = null;
Cursor cursor = client.select(selection, selectionArgs, sortOrder);
- return cursorToCollection(cursor);
+ try {
+ return cursorToCollection(cursor);
+ } finally {
+ cursor.close();
+ }
}
@NonNull private Collection<T> cursorToCollection(@NonNull Cursor cursor) {
@@ -172,7 +176,11 @@
String selection = client.getPrimaryKeySelection(item, selectionArgs);
String sortOrder = null;
Cursor cursor = client.select(selection, selectionArgs, sortOrder);
- return cursor.moveToNext() ? client.fromCursor(cursor) : null;
+ try {
+ return cursor.moveToNext() ? client.fromCursor(cursor) : null;
+ } finally {
+ cursor.close();
+ }
}
private synchronized void removeItem(@NonNull T item) {
diff --git
a/app/src/main/java/org/wikipedia/page/bottomcontent/MainPageReadMoreTopicTask.java
b/app/src/main/java/org/wikipedia/page/bottomcontent/MainPageReadMoreTopicTask.java
index ccea955..7fd37e5 100644
---
a/app/src/main/java/org/wikipedia/page/bottomcontent/MainPageReadMoreTopicTask.java
+++
b/app/src/main/java/org/wikipedia/page/bottomcontent/MainPageReadMoreTopicTask.java
@@ -23,12 +23,16 @@
@Override
public PageTitle performTask() throws Throwable {
Cursor c = getInterestedHistoryEntry();
- if (c.getCount() > 0) {
- c.moveToFirst();
- final HistoryEntry historyEntry =
HistoryEntry.DATABASE_TABLE.fromCursor(c);
- return historyEntry.getTitle();
+ try {
+ if (c.getCount() > 0) {
+ c.moveToFirst();
+ final HistoryEntry historyEntry =
HistoryEntry.DATABASE_TABLE.fromCursor(c);
+ return historyEntry.getTitle();
+ }
+ return null;
+ } finally {
+ c.close();
}
- return null;
}
private android.database.Cursor getInterestedHistoryEntry() {
diff --git
a/app/src/main/java/org/wikipedia/page/gallery/MediaDownloadReceiver.java
b/app/src/main/java/org/wikipedia/page/gallery/MediaDownloadReceiver.java
index 9d2bc6c..fb26654 100644
--- a/app/src/main/java/org/wikipedia/page/gallery/MediaDownloadReceiver.java
+++ b/app/src/main/java/org/wikipedia/page/gallery/MediaDownloadReceiver.java
@@ -56,14 +56,18 @@
DownloadManager.Query query = new DownloadManager.Query();
query.setFilterById(downloadId);
Cursor c = downloadManager.query(query);
- if (c.moveToFirst()) {
- int statusIndex =
c.getColumnIndexOrThrow(DownloadManager.COLUMN_STATUS);
- int pathIndex =
c.getColumnIndexOrThrow(DownloadManager.COLUMN_LOCAL_FILENAME);
- int mimeIndex =
c.getColumnIndexOrThrow(DownloadManager.COLUMN_MEDIA_TYPE);
- if (DownloadManager.STATUS_SUCCESSFUL ==
c.getInt(statusIndex)) {
- notifyContentResolver(c.getString(pathIndex),
c.getString(mimeIndex));
- FeedbackUtil.showMessage(activity,
R.string.gallery_save_success);
+ try {
+ if (c.moveToFirst()) {
+ int statusIndex =
c.getColumnIndexOrThrow(DownloadManager.COLUMN_STATUS);
+ int pathIndex =
c.getColumnIndexOrThrow(DownloadManager.COLUMN_LOCAL_FILENAME);
+ int mimeIndex =
c.getColumnIndexOrThrow(DownloadManager.COLUMN_MEDIA_TYPE);
+ if (DownloadManager.STATUS_SUCCESSFUL ==
c.getInt(statusIndex)) {
+ notifyContentResolver(c.getString(pathIndex),
c.getString(mimeIndex));
+ FeedbackUtil.showMessage(activity,
R.string.gallery_save_success);
+ }
}
+ } finally {
+ c.close();
}
}
}
--
To view, visit https://gerrit.wikimedia.org/r/277809
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I8350cade4550adb4b4afb6be5e2fe61037f2e335
Gerrit-PatchSet: 1
Gerrit-Project: apps/android/wikipedia
Gerrit-Branch: master
Gerrit-Owner: Dbrant <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits