diff options
-rw-r--r-- | player/audio.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/player/audio.c b/player/audio.c index a1e7903be6..86b1a04500 100644 --- a/player/audio.c +++ b/player/audio.c @@ -216,7 +216,9 @@ void uninit_audio_out(struct MPContext *mpctx) } if (mpctx->ao) { // Note: with gapless_audio, stop_play is not correctly set - if (mpctx->opts->gapless_audio || mpctx->stop_play == AT_END_OF_FILE) { + if ((mpctx->opts->gapless_audio || mpctx->stop_play == AT_END_OF_FILE) && + ao_is_playing(mpctx->ao) && !get_internal_paused(mpctx)) + { MP_VERBOSE(mpctx, "draining left over audio\n"); ao_drain(mpctx->ao); } |