summaryrefslogtreecommitdiff
path: root/core/src
diff options
context:
space:
mode:
authorErik Johnson <palehose@gmail.com>2023-11-15 13:47:51 -0600
committerGitHub <noreply@github.com>2023-11-15 20:47:51 +0100
commit637230e382a67ae8a0c7d889a773edb64bb74181 (patch)
treef267fab1540474969c4e86007b04102756aacf5a /core/src
parent10672f8086869cf7d51f4143dd0c2d0acee7d02f (diff)
downloadAntennaPod-637230e382a67ae8a0c7d889a773edb64bb74181.zip
Fix seeking to end using seek bar (#6763)
Merging #6074 has caused a new edge case for VBR audio files, in which using the seek bar to seek to the end of an episode sometimes hits the new code path, and the `skip()` function is called. Because `skip()` invokes `endPlayback()` with `hasEnded` set to `false`, post-processing tasks are not executed unless the pre-seek position falls within the "Smart mark as played" range. If "Smart mark as played" is set to `Disabled`, or the pre-seek position is outside that range, then the episode is not marked as played, and not removed from queue. This commit fixes that edge case by replacing `skip()` with a direct call to `endPlayback()`, with `hasEnded` set to `true`.
Diffstat (limited to 'core/src')
-rw-r--r--core/src/main/java/de/danoeh/antennapod/core/service/playback/LocalPSMP.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/core/src/main/java/de/danoeh/antennapod/core/service/playback/LocalPSMP.java b/core/src/main/java/de/danoeh/antennapod/core/service/playback/LocalPSMP.java
index e7d7d10c9..69c632c4f 100644
--- a/core/src/main/java/de/danoeh/antennapod/core/service/playback/LocalPSMP.java
+++ b/core/src/main/java/de/danoeh/antennapod/core/service/playback/LocalPSMP.java
@@ -345,7 +345,7 @@ public class LocalPSMP extends PlaybackServiceMediaPlayer {
if (t >= getDuration()) {
Log.d(TAG, "Seek reached end of file, skipping to next episode");
- skip();
+ endPlayback(true, true, true, true);
return;
}