cache: saner automatic cache enable; avoids -playlist crash
commite2607061f5773c904b7862c061aa07054c05d0ab
authorUoti Urpala <uau@mplayer2.org>
Sat, 17 Nov 2012 17:12:13 +0000 (17 19:12 +0200)
committerUoti Urpala <uau@mplayer2.org>
Sat, 17 Nov 2012 17:44:08 +0000 (17 19:44 +0200)
tree4644958b108eb03d67fb5731d62c44bdb4168578
parent6d30d04263c99f38fad8cdb5460a4e2e2bc9b779
cache: saner automatic cache enable; avoids -playlist crash

Code enabling the cache by default for network streams did that by
modifying the value of the "cache" option. This wasn't sane, as
multiple streams may be created and all share the same options. Change
the code to not modify options but store data in the stream instance
instead.

As a side effect, this commit avoids a crash triggered by commit
5722fa1552 ("core, timeline: cache external ordered chapter files
too"). Some existing code creating streams leaves the option pointer
at NULL. That commit modified the function setting cache size for
network streams to use the option pointer, which led to a crash when
using -playlist with a network URL (would also happen in rare cases
like network --sub). This commit removes the pointer use again,
avoiding the crash; the pointer should be set properly though.
13 files changed:
libmpdemux/demuxer.c
mplayer.c
stream/asf_streaming.c
stream/cache2.c
stream/http.c
stream/network.c
stream/network.h
stream/pnm.c
stream/stream.c
stream/stream.h
stream/stream_rtp.c
stream/stream_udp.c
timeline/tl_matroska.c