mpv/stream
wm4 e74ffab36e stream_libarchive: fix hangs when demuxer does out of bound seeks
This happened with a .flac file inside an archive. It tried to seek
beyond the end of the archive entry in a format where seeking isn't
supported. stream_libarchive handles these situations by skipping data.
But when the end of the archive is reached, archive_read_data() returns
0. While libarchive didn't bother to fucking document this, they do say
it's supposed to work like read(), so I guess a return value of 0 really
means EOF. So change the "< 0" to "<= 0". Also add some error logging.

The same file actually worked without out of bounds reads when
extracted, so there still might be something very wrong.

(cherry picked from commit 7e85dc2167)
2018-10-01 18:54:54 +03:00
..
ai_alsa1x.c
ai_oss.c
ai_sndio.c
audio_in.c
audio_in.h Add checks for HAVE_GPL to various GPL-only source files 2017-10-10 15:51:16 +02:00
cache.c cache: fix --cache-initial status message 2018-01-07 05:03:15 -08:00
cache_file.c
cookies.c
cookies.h
dvb_tune.c dvb: Add multiple frontends support: MAX_FRONTENDS now 8. 2017-12-16 23:24:55 -08:00
dvb_tune.h dvb: Add multiple frontends support: MAX_FRONTENDS now 8. 2017-12-16 23:24:55 -08:00
dvbin.h dvb: Add multiple frontends support: MAX_FRONTENDS now 8. 2017-12-16 23:24:55 -08:00
frequencies.c
frequencies.h Add checks for HAVE_GPL to various GPL-only source files 2017-10-10 15:51:16 +02:00
rar.c
rar.h
stream.c demux, stream: ignore packets and errors on forced exit 2018-03-26 19:47:07 +02:00
stream.h stream: use native libavformat reconnection feature 2018-01-04 18:33:18 -08:00
stream_avdevice.c
stream_bluray.c stream_bluray: always show list of available titles 2018-01-23 11:13:37 +00:00
stream_cb.c
stream_cdda.c Add checks for HAVE_GPL to various GPL-only source files 2017-10-10 15:51:16 +02:00
stream_dvb.c dvb: Add multiple frontends support: MAX_FRONTENDS now 8. 2017-12-16 23:24:55 -08:00
stream_dvd.c
stream_dvd_common.c
stream_dvd_common.h Add checks for HAVE_GPL to various GPL-only source files 2017-10-10 15:51:16 +02:00
stream_dvdnav.c Add checks for HAVE_GPL to various GPL-only source files 2017-10-10 15:51:16 +02:00
stream_edl.c
stream_file.c stream_smb/stream_file: fix `write_buffer` 2018-07-29 12:59:03 +03:00
stream_lavf.c options: add --http-proxy 2018-05-31 01:24:51 +03:00
stream_libarchive.c stream_libarchive: fix hangs when demuxer does out of bound seeks 2018-10-01 18:54:54 +03:00
stream_libarchive.h stream_libarchive: Fix locale includes on macOS 2017-12-03 21:54:12 +01:00
stream_memory.c
stream_mf.c
stream_null.c
stream_rar.c
stream_smb.c stream_smb/stream_file: fix `write_buffer` 2018-07-29 12:59:03 +03:00
stream_tv.c
tv.c
tv.h tv: Recognise v4l2 'JPEG' fourcc 2018-03-04 16:28:24 -08:00
tvi_def.h tv: Recognise v4l2 'JPEG' fourcc 2018-03-04 16:28:24 -08:00
tvi_dummy.c
tvi_v4l2.c tv: Recognise v4l2 'JPEG' fourcc 2018-03-04 16:28:24 -08:00