summaryrefslogtreecommitdiff
path: root/apps/playback.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/playback.c')
-rw-r--r--apps/playback.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/apps/playback.c b/apps/playback.c
index be0d476ebd..3aacde09c3 100644
--- a/apps/playback.c
+++ b/apps/playback.c
@@ -2081,8 +2081,8 @@ static void codec_thread(void)
2081 2081
2082 if (!codec_load_next_track()) 2082 if (!codec_load_next_track())
2083 { 2083 {
2084 // queue_post(&codec_queue, Q_AUDIO_STOP, 0);
2085 LOGFQUEUE("codec > audio Q_AUDIO_STOP"); 2084 LOGFQUEUE("codec > audio Q_AUDIO_STOP");
2085 /* End of playlist */
2086 queue_post(&audio_queue, Q_AUDIO_STOP, 0); 2086 queue_post(&audio_queue, Q_AUDIO_STOP, 0);
2087 break; 2087 break;
2088 } 2088 }
@@ -2101,6 +2101,7 @@ static void codec_thread(void)
2101 sleep(1); 2101 sleep(1);
2102 } 2102 }
2103 LOGFQUEUE("codec > audio Q_AUDIO_STOP"); 2103 LOGFQUEUE("codec > audio Q_AUDIO_STOP");
2104 /* End of playlist */
2104 queue_post(&audio_queue, Q_AUDIO_STOP, 0); 2105 queue_post(&audio_queue, Q_AUDIO_STOP, 0);
2105 break; 2106 break;
2106 } 2107 }
@@ -3296,11 +3297,17 @@ static void audio_stop_playback(void)
3296 playlist_update_resume_info( 3297 playlist_update_resume_info(
3297 (playlist_end && ci.stop_codec)?NULL:audio_current_track()); 3298 (playlist_end && ci.stop_codec)?NULL:audio_current_track());
3298 3299
3299 /* inc index so runtime info is saved in audio_clear_track_entries() */ 3300 /* Increment index so runtime info is saved in audio_clear_track_entries().
3300 /* done here, as audio_stop_playback() may be called more than once */ 3301 * Done here, as audio_stop_playback() may be called more than once.
3301 track_ridx++; 3302 * Don't update runtime unless playback is stopped because of end of playlist.
3302 track_ridx &= MAX_TRACK_MASK; 3303 * Updating runtime when manually stopping a tracks, can destroy autoscores
3303 3304 * and playcounts.
3305 */
3306 if (playlist_end)
3307 {
3308 track_ridx++;
3309 track_ridx &= MAX_TRACK_MASK;
3310 }
3304 } 3311 }
3305 3312
3306 filling = false; 3313 filling = false;