From 09d873d5d4cb23a0b5a4f378a9ba43910761b485 Mon Sep 17 00:00:00 2001 From: wm4 Date: Wed, 19 Feb 2014 00:14:40 +0100 Subject: player: fix start time if timeline is used (ordered chapters, EDL) When timeline was used, and the --start option was not used, the initial seek (needed to switch to the first timeline segment) seeked to -1 due to an oversight. --- player/loadfile.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'player/loadfile.c') diff --git a/player/loadfile.c b/player/loadfile.c index 94a0274297..f062bce27c 100644 --- a/player/loadfile.c +++ b/player/loadfile.c @@ -1322,15 +1322,13 @@ goto_reopen_demuxer: ; // If there's a timeline force an absolute seek to initialize state double startpos = rel_time_to_abs(mpctx, opts->play_start, -1); - if (startpos != -1 || mpctx->timeline) { - queue_seek(mpctx, MPSEEK_ABSOLUTE, startpos, 0, true); - execute_queued_seek(mpctx); - } if (startpos == -1 && mpctx->resolve_result && mpctx->resolve_result->start_time > 0) - { - queue_seek(mpctx, MPSEEK_ABSOLUTE, mpctx->resolve_result->start_time, - 0, true); + startpos = mpctx->resolve_result->start_time; + if (startpos == -1 && mpctx->timeline) + startpos = 0; + if (startpos != -1) { + queue_seek(mpctx, MPSEEK_ABSOLUTE, startpos, 0, true); execute_queued_seek(mpctx); } if (opts->chapterrange[0] > 0) { -- cgit v1.2.3