diff options
author | daniel oeh <daniel.oeh@gmail.com> | 2012-08-18 16:25:36 +0200 |
---|---|---|
committer | daniel oeh <daniel.oeh@gmail.com> | 2012-08-18 16:25:36 +0200 |
commit | b99a810a1b8cfe8bcf47396307daccccc1cea378 (patch) | |
tree | eeba96e76e99f47f0c17bfca3a1c9c8b76781829 | |
parent | 1fefa40c56406c1d08476e19068fc17813ac0d42 (diff) | |
download | AntennaPod-b99a810a1b8cfe8bcf47396307daccccc1cea378.zip |
FeedManager will now delete the oldest DownloadStatus when log becomes
too big
-rw-r--r-- | src/de/danoeh/antennapod/feed/FeedManager.java | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/de/danoeh/antennapod/feed/FeedManager.java b/src/de/danoeh/antennapod/feed/FeedManager.java index a13a9dcab..871649514 100644 --- a/src/de/danoeh/antennapod/feed/FeedManager.java +++ b/src/de/danoeh/antennapod/feed/FeedManager.java @@ -266,7 +266,8 @@ public class FeedManager { for (FeedItem item : unreadItems) { item.read = true; } - final ArrayList<FeedItem> unreadItemsCopy = new ArrayList<FeedItem>(unreadItems); + final ArrayList<FeedItem> unreadItemsCopy = new ArrayList<FeedItem>( + unreadItems); unreadItems.clear(); sendUnreadItemsUpdateBroadcast(context, null); dbExec.execute(new Runnable() { @@ -340,13 +341,13 @@ public class FeedManager { @Override public void run() { downloadLog.add(status); + Collections.sort(downloadLog, new DownloadStatusComparator()); final DownloadStatus removedStatus; if (downloadLog.size() > DOWNLOAD_LOG_SIZE) { - removedStatus = downloadLog.remove(0); + removedStatus = downloadLog.remove(downloadLog.size() - 1); } else { removedStatus = null; } - Collections.sort(downloadLog, new DownloadStatusComparator()); context.sendBroadcast(new Intent(ACTION_DOWNLOADLOG_UPDATE)); dbExec.execute(new Runnable() { |