On Thu, 21 Nov 2013 11:57:10 +0200, Martin Storsjö <[email protected]> wrote: > This allows both the main playlist itself as well as the variant > playlists to handle redirects combined with relative urls. > --- > libavformat/hls.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/libavformat/hls.c b/libavformat/hls.c > index ea16f8a..14fdf8f 100644 > --- a/libavformat/hls.c > +++ b/libavformat/hls.c > @@ -211,6 +211,7 @@ static int parse_playlist(HLSContext *c, const char *url, > char line[1024]; > const char *ptr; > int close_in = 0; > + uint8_t *new_url = NULL; > > if (!in) { > close_in = 1; > @@ -219,6 +220,9 @@ static int parse_playlist(HLSContext *c, const char *url, > return ret; > } > > + if (av_opt_get(in, "location", AV_OPT_SEARCH_CHILDREN, &new_url) >= 0) > + url = new_url; > + > read_chomp_line(in, line, sizeof(line)); > if (strcmp(line, "#EXTM3U")) { > ret = AVERROR_INVALIDDATA; > @@ -319,6 +323,7 @@ static int parse_playlist(HLSContext *c, const char *url, > var->last_load_time = av_gettime(); > > fail: > + av_free(new_url); > if (close_in) > avio_close(in); > return ret; > -- > 1.7.9.4 >
Sneaky. The patch looks ok (assuming you tested it and it works). -- Anton Khirnov _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
