summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--player/audio.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/player/audio.c b/player/audio.c
index f371b69bb4..5fcc2cbd22 100644
--- a/player/audio.c
+++ b/player/audio.c
@@ -414,7 +414,7 @@ void fill_audio_out_buffers(struct MPContext *mpctx, double endpts)
return; // retry on next iteration
}
- bool end_sync = status != AD_OK; // (on error/EOF, start playback immediately)
+ bool end_sync = false;
if (skip >= 0) {
int max = mp_audio_buffer_samples(mpctx->ao_buffer);
mp_audio_buffer_skip(mpctx->ao_buffer, MPMIN(skip, max));
@@ -434,6 +434,8 @@ void fill_audio_out_buffers(struct MPContext *mpctx, double endpts)
if (mpctx->audio_status == STATUS_SYNCING) {
if (end_sync)
mpctx->audio_status = STATUS_FILLING;
+ if (status != AD_OK)
+ mpctx->audio_status = STATUS_EOF;
mpctx->sleeptime = 0;
return; // continue on next iteration
}