mpv/stream
wm4 469666b75b stream: fix double-free if cache init fails
If the normal stream cache init fails, and a file cache was initialized
before, we free the file cache as well. But since the file cache is
chained to the real stream, the real stream will also be freed. This has
to be prevented by clearing the pointer to the original stream in the
uncached_stream field.

This could in particular be triggered by using --cache-initial=1000 and
aborting playback during loading. (Without that option, stream cache
init failure is far less likely.)
2016-08-08 11:32:55 +02:00
..
ai_alsa1x.c stream/audio: fix unchecked strdups 2015-10-30 15:51:26 +01:00
ai_oss.c stream/audio: fix unchecked strdups 2015-10-30 15:51:26 +01:00
ai_sndio.c stream/audio: fix unchecked strdups 2015-10-30 15:51:26 +01:00
audio_in.c stream/audio: fix unchecked strdups 2015-10-30 15:51:26 +01:00
audio_in.h Update license headers 2015-04-13 12:10:01 +02:00
cache.c cache: minor simplification 2016-07-11 22:20:23 +02:00
cache_file.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
cookies.c Update license headers 2015-04-13 12:10:01 +02:00
cookies.h Update license headers 2015-04-13 12:10:01 +02:00
dvb_tune.c dvb: remove trailing whitespace 2016-01-22 11:55:47 +01:00
dvb_tune.h stream_dvb: support frontends with multiple delivery systems. 2016-01-21 00:34:02 +01:00
dvbin.h build: make DVB test stricter 2016-04-02 20:51:39 +02:00
frequencies.c Update license headers 2015-04-13 12:10:01 +02:00
frequencies.h Update license headers 2015-04-13 12:10:01 +02:00
rar.c mpv_talloc.h: rename from talloc.h 2016-01-11 21:05:55 +01:00
rar.h
stream.c stream: fix double-free if cache init fails 2016-08-08 11:32:55 +02:00
stream.h client API: add stream_cb API for user-defined stream implementations 2016-08-07 19:33:20 +02:00
stream_avdevice.c Relicense some non-MPlayer source files to LGPL 2.1 or later 2016-01-19 18:36:06 +01:00
stream_bluray.c mpv_talloc.h: rename from talloc.h 2016-01-11 21:05:55 +01:00
stream_cb.c client API: add stream_cb API for user-defined stream implementations 2016-08-07 19:33:20 +02:00
stream_cdda.c stream_cdda: enable cache by default 2016-05-10 11:17:52 +02:00
stream_dvb.c stream_dvb: fix minor resource leaks 2016-02-12 15:51:49 +01:00
stream_dvd.c mpv_talloc.h: rename from talloc.h 2016-01-11 21:05:55 +01:00
stream_dvd_common.c Update license headers 2015-04-13 12:10:01 +02:00
stream_dvd_common.h Update license headers 2015-04-13 12:10:01 +02:00
stream_dvdnav.c demux: remove relative seeking 2016-02-28 19:28:34 +01:00
stream_edl.c
stream_file.c win32: fix fd:// 2016-01-07 23:37:06 +11:00
stream_lavf.c mpv_talloc.h: rename from talloc.h 2016-01-11 21:05:55 +01:00
stream_libarchive.c libarchive: sanitize non-UTF8 archive entries 2016-07-18 12:52:59 +02:00
stream_libarchive.h libarchive: unify entry iteration between stream/demux layers 2016-07-18 12:44:56 +02:00
stream_memory.c stream_memory: add hex:// protocol 2016-04-20 18:00:20 +02:00
stream_mf.c Update license headers 2015-04-13 12:10:01 +02:00
stream_null.c Update license headers 2015-04-13 12:10:01 +02:00
stream_rar.c
stream_smb.c Update license headers 2015-04-13 12:10:01 +02:00
stream_tv.c Update license headers 2015-04-13 12:10:01 +02:00
tv.c Update license headers 2015-04-13 12:10:01 +02:00
tv.h Update license headers 2015-04-13 12:10:01 +02:00
tvi_def.h Update license headers 2015-04-13 12:10:01 +02:00
tvi_dummy.c Update license headers 2015-04-13 12:10:01 +02:00
tvi_v4l2.c tvi_v4l2: fix style in the uninit function 2016-08-05 10:08:57 +02:00