summaryrefslogtreecommitdiffstats
path: root/player/loadfile.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2015-10-06 18:18:13 +0200
committerwm4 <wm4@nowhere>2015-10-06 18:19:20 +0200
commitecb776f88efdc7df6d0493ce97ab44528704272f (patch)
tree30d1734f5de253d764da58ce574abfb1b3e51ae5 /player/loadfile.c
parent1c593f1497b8c5efa2d08467d72f7c4de348d385 (diff)
downloadmpv-ecb776f88efdc7df6d0493ce97ab44528704272f.tar.bz2
mpv-ecb776f88efdc7df6d0493ce97ab44528704272f.tar.xz
player: make stop command actually stop
The stop command didn't always stop. In this case, opening a HLS URL and then sending "stop" during loading would actually make it fallback to parsing it as a playlist, and then continued to play the playlist items. (This corner case makes several unfortunate factors come together to produce this really odd behavior.) Another issue is that the "stop" was not always explicitly set. This could be a problem when sending several commands at once. Only the "quit" command should have priority over the "stop" command, so this is still checked.
Diffstat (limited to 'player/loadfile.c')
-rw-r--r--player/loadfile.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/player/loadfile.c b/player/loadfile.c
index 40f35472e7..c472cad344 100644
--- a/player/loadfile.c
+++ b/player/loadfile.c
@@ -1097,7 +1097,7 @@ reopen_file:
}
open_demux_reentrant(mpctx);
- if (!mpctx->master_demuxer)
+ if (!mpctx->master_demuxer || mpctx->stop_play)
goto terminate_playback;
mpctx->demuxer = mpctx->master_demuxer;