From cb3b1f2b1f0f01056646142558c7a1f4660c01a1 Mon Sep 17 00:00:00 2001 From: ByteHamster Date: Mon, 2 Dec 2019 13:04:52 +0100 Subject: Ignore cancellationException --- .../antennapod/core/service/playback/PlaybackServiceTaskManager.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'core/src/main/java/de/danoeh/antennapod') diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceTaskManager.java b/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceTaskManager.java index 70d9d9f77..736cf8cf2 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceTaskManager.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/playback/PlaybackServiceTaskManager.java @@ -11,6 +11,7 @@ import org.greenrobot.eventbus.EventBus; import org.greenrobot.eventbus.Subscribe; import java.util.List; +import java.util.concurrent.CancellationException; import java.util.concurrent.ExecutionException; import java.util.concurrent.Future; import java.util.concurrent.ScheduledFuture; @@ -140,7 +141,7 @@ public class PlaybackServiceTaskManager { if (queueFuture.isDone()) { try { return queueFuture.get(); - } catch (InterruptedException | ExecutionException e) { + } catch (InterruptedException | ExecutionException | CancellationException e) { e.printStackTrace(); } } -- cgit v1.2.3 From c752d90f4f3db24643d3e3601c41d4a38cd6938e Mon Sep 17 00:00:00 2001 From: ByteHamster Date: Mon, 2 Dec 2019 13:07:51 +0100 Subject: Wait for downloadCompletionThread to finish before stopping executors used by the thread --- .../de/danoeh/antennapod/core/service/download/DownloadService.java | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'core/src/main/java/de/danoeh/antennapod') diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/download/DownloadService.java b/core/src/main/java/de/danoeh/antennapod/core/service/download/DownloadService.java index 95dad1749..0528fc3dc 100644 --- a/core/src/main/java/de/danoeh/antennapod/core/service/download/DownloadService.java +++ b/core/src/main/java/de/danoeh/antennapod/core/service/download/DownloadService.java @@ -218,6 +218,11 @@ public class DownloadService extends Service { nm.cancel(NOTIFICATION_ID); downloadCompletionThread.interrupt(); + try { + downloadCompletionThread.join(); + } catch (InterruptedException e) { + e.printStackTrace(); + } syncExecutor.shutdown(); schedExecutor.shutdown(); cancelNotificationUpdater(); -- cgit v1.2.3