From 593ad996e0621666d5c6d39c52f8119e5337af03 Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 30 Jul 2014 00:22:25 +0200 Subject: player: fix time display wheen seeking past EOF with --keep-open Regression since commit 261506e3. Internally speaking, playback was often not properly terminated, and the main part of handle_keep_open() was just executed once, instead of any time the user tries to seek. This means playback_pts was not set, and the "current time" was determined by the seek target PTS. So fix this aspect of video EOF handling, and also remove the now unnecessary eof_reached field. The pause check before calling pause_player() is a lazy workaround for a strange event feedback loop that happens on EOF with --keep-open. --- player/loadfile.c | 1 - 1 file changed, 1 deletion(-) (limited to 'player/loadfile.c') diff --git a/player/loadfile.c b/player/loadfile.c index 6c89057432..e26968000b 100644 --- a/player/loadfile.c +++ b/player/loadfile.c @@ -1276,7 +1276,6 @@ goto_reopen_demuxer: ; mpctx->playing_msg_shown = false; mpctx->paused = false; mpctx->paused_for_cache = false; - mpctx->eof_reached = false; mpctx->last_chapter = -2; mpctx->seek = (struct seek_params){ 0 }; mpctx->video_status = mpctx->d_video ? STATUS_SYNCING : STATUS_EOF; -- cgit v1.2.3