From ce60c1adf716b71525ec7efceec6e2b521b14323 Mon Sep 17 00:00:00 2001 From: wm4 Date: Thu, 7 Jan 2016 09:11:15 +0100 Subject: player: reset playback abort when reloading a file PT_RELOAD_FILE is a somewhat obscure case when using DVB or when switching Matroska editions. Both cases were broken, because the asynchronous playback abort mechanism was still triggered. This mechanism is used to force the demuxer and stream layers to exit immediately (instead of blocking on I/O possibly forever), and is normally disabled on playback start. The reopen path is a bit strange, and needs to reset it manually. Pointed out in #2568. --- player/loadfile.c | 1 + 1 file changed, 1 insertion(+) diff --git a/player/loadfile.c b/player/loadfile.c index ec4d19d3c5..e177df67d3 100644 --- a/player/loadfile.c +++ b/player/loadfile.c @@ -1265,6 +1265,7 @@ terminate_playback: if (mpctx->stop_play == PT_RELOAD_FILE) { mpctx->stop_play = KEEP_PLAYING; + mp_cancel_reset(mpctx->playback_abort); goto reopen_file; } -- cgit v1.2.3