diff options
author | Simon Rutishauser <simon.rutishauser@web.de> | 2014-01-02 15:43:43 +0100 |
---|---|---|
committer | Simon Rutishauser <simon.rutishauser@web.de> | 2014-01-02 21:09:53 +0100 |
commit | 8c116142b89aa78f50fbf9dc08701428a6ea0b98 (patch) | |
tree | baeef2a817676efc0950689f1e8196b77ecd8dda /src/de/danoeh/antennapod/util/menuhandler/FeedMenuHandler.java | |
parent | 375aefb2bf28c2bb4cee545808fadd93c1328434 (diff) | |
download | AntennaPod-8c116142b89aa78f50fbf9dc08701428a6ea0b98.zip |
* directly update Feed/FeedItem FlattrStatus instead of writing back entire Feed/FeedItem to database
* fix race condition when fetching FlattrStatus
* fix missing copy of Flattr status in Feed.updateFromOther()
* fix feed reading from db, was missing FlattrStatus
followup on #331
Diffstat (limited to 'src/de/danoeh/antennapod/util/menuhandler/FeedMenuHandler.java')
-rw-r--r-- | src/de/danoeh/antennapod/util/menuhandler/FeedMenuHandler.java | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/de/danoeh/antennapod/util/menuhandler/FeedMenuHandler.java b/src/de/danoeh/antennapod/util/menuhandler/FeedMenuHandler.java index 1559ae1c4..04620af49 100644 --- a/src/de/danoeh/antennapod/util/menuhandler/FeedMenuHandler.java +++ b/src/de/danoeh/antennapod/util/menuhandler/FeedMenuHandler.java @@ -8,6 +8,10 @@ import android.util.Log; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; + +import java.util.concurrent.ExecutionException; +import java.util.concurrent.Future; + import de.danoeh.antennapod.AppConfig; import de.danoeh.antennapod.R; import de.danoeh.antennapod.activity.FeedInfoActivity; @@ -81,8 +85,15 @@ public class FeedMenuHandler { break; case R.id.support_item: selectedFeed.getFlattrStatus().setFlattrQueue(); - DBWriter.setFlattredStatus(context, selectedFeed); - new FlattrClickWorker(context).executeAsync(); + Future<?> future = DBWriter.setFlattredStatus(context, selectedFeed); + try { + synchronized (future) { + future.wait(10); + } + } catch (InterruptedException e) { + e.printStackTrace(); + } + new FlattrClickWorker(context).executeAsync(); break; case R.id.share_link_item: ShareUtils.shareFeedlink(context, selectedFeed); |