summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/playback.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/apps/playback.c b/apps/playback.c
index e10c9e7..2bde733 100644
--- a/apps/playback.c
+++ b/apps/playback.c
@@ -940,7 +940,10 @@ static void audio_check_new_track(void)
playlist_next(ci.new_track);
if (new_playlist)
+ {
ci.new_track = 1;
+ new_playlist = false;
+ }
track_ridx+=ci.new_track;
if (track_ridx >= MAX_TRACK)
@@ -2095,6 +2098,9 @@ static void audio_new_playlist(void)
close(current_fd);
current_fd = -1;
+ /* Mark the current track as invalid to prevent skipping back to it */
+ cur_ti->taginfo_ready = false;
+
/* Invalidate the buffer other than the playing track */
filebufused = cur_ti->available;
buf_widx = buf_ridx + cur_ti->available;