mirror of https://github.com/mpv-player/mpv
50db7b7f75
Using --loop=inf on an unseekable file would put mpv (and all other mplayers as well) into an endless loop, trying to seek to the start of the file on each playback loop iteration. When the seek fails, playback simply remains in the at-end-of-file state, and tries to issue a new seek command for looping. Fix by checking if the seek command fails, and abort looping in this case. For that, queue_seek() is replaced with seek(). Due to the circumstances, these two calls happen to be equal in this case: the seek is absolute (i.e. no seek coalescing done), and the execution of queued seeks is right after the loop code anyway. |
||
---|---|---|
.. | ||
input | ||
timeline | ||
asxparser.c | ||
asxparser.h | ||
av_log.c | ||
av_log.h | ||
av_opts.c | ||
av_opts.h | ||
bstr.c | ||
bstr.h | ||
cfg-mplayer.h | ||
codec-cfg.c | ||
codec-cfg.h | ||
command.c | ||
command.h | ||
cpudetect.c | ||
cpudetect.h | ||
defaultopts.c | ||
defaultopts.h | ||
encode.h | ||
encode_lavc.c | ||
encode_lavc.h | ||
m_config.c | ||
m_config.h | ||
m_option.c | ||
m_option.h | ||
m_property.c | ||
m_property.h | ||
m_struct.c | ||
m_struct.h | ||
mp_common.c | ||
mp_common.h | ||
mp_core.h | ||
mp_fifo.c | ||
mp_fifo.h | ||
mp_msg.c | ||
mp_msg.h | ||
mp_osd.h | ||
mp_talloc.h | ||
mpc_info.h | ||
mplayer.c | ||
mplayer.h | ||
options.h | ||
parser-cfg.c | ||
parser-cfg.h | ||
parser-mpcmd.c | ||
parser-mpcmd.h | ||
path.c | ||
path.h | ||
playlist.c | ||
playlist.h | ||
playlist_parser.c | ||
playlist_parser.h | ||
quvi.c | ||
screenshot.c | ||
screenshot.h | ||
subopt-helper.c | ||
subopt-helper.h | ||
version.c |