diff options
author | ByteHamster <info@bytehamster.com> | 2019-07-23 21:05:37 +0200 |
---|---|---|
committer | ByteHamster <info@bytehamster.com> | 2019-07-23 21:27:18 +0200 |
commit | 8b9c31ccf04128b78b6c286b2e5ae17871fe7a54 (patch) | |
tree | e5722b9e6f53553c47db7359e45df1ca900536bc /core | |
parent | 76f9040184bdf5a2a766c00b15530ec90ae6fbed (diff) | |
download | AntennaPod-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.java | 11 |
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"); } |