summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2019-07-23 21:05:37 +0200
committerByteHamster <info@bytehamster.com>2019-07-23 21:27:18 +0200
commit8b9c31ccf04128b78b6c286b2e5ae17871fe7a54 (patch)
treee5722b9e6f53553c47db7359e45df1ca900536bc /core
parent76f9040184bdf5a2a766c00b15530ec90ae6fbed (diff)
downloadAntennaPod-8b9c31ccf04128b78b6c286b2e5ae17871fe7a54.zip
Do not set PlaybackService to null while still updating widget
Diffstat (limited to 'core')
-rw-r--r--core/src/main/java/de/danoeh/antennapod/core/service/PlayerWidgetJobService.java11
1 files changed, 9 insertions, 2 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/PlayerWidgetJobService.java b/core/src/main/java/de/danoeh/antennapod/core/service/PlayerWidgetJobService.java
index 1165d689a..b26d3011d 100644
--- a/core/src/main/java/de/danoeh/antennapod/core/service/PlayerWidgetJobService.java
+++ b/core/src/main/java/de/danoeh/antennapod/core/service/PlayerWidgetJobService.java
@@ -41,6 +41,7 @@ public class PlayerWidgetJobService extends SafeJobIntentService {
private PlaybackService playbackService;
private final Object waitForService = new Object();
+ private final Object waitUsingService = new Object();
private static final int JOB_ID = -17001;
@@ -67,7 +68,11 @@ public class PlayerWidgetJobService extends SafeJobIntentService {
}
}
- updateViews();
+ synchronized (waitUsingService) {
+ if (playbackService != null) {
+ updateViews();
+ }
+ }
if (playbackService != null) {
try {
@@ -230,7 +235,9 @@ public class PlayerWidgetJobService extends SafeJobIntentService {
@Override
public void onServiceDisconnected(ComponentName name) {
- playbackService = null;
+ synchronized (waitUsingService) {
+ playbackService = null;
+ }
Log.d(TAG, "Disconnected from service");
}