ffmpeg | branch: master | Aman Gupta <a...@tmm1.net> | Mon Dec 25 18:25:13 2017 -0800| [ac19e63b184570c0ade4d3a8a785f64441d9cac8] | committer: Aman Gupta
avformat/hls: respect http_persistent only for http playlist urls Fixes a segfault when reading a live playlist (without end tag) from non-http url (like a file on disk). Signed-off-by: Aman Gupta <a...@tmm1.net> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ac19e63b184570c0ade4d3a8a785f64441d9cac8 --- libavformat/hls.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/libavformat/hls.c b/libavformat/hls.c index c0bade0e84..2d46c2ac69 100644 --- a/libavformat/hls.c +++ b/libavformat/hls.c @@ -725,8 +725,9 @@ static int parse_playlist(HLSContext *c, const char *url, struct variant_info variant_info; char tmp_str[MAX_URL_SIZE]; struct segment *cur_init_section = NULL; + int is_http = av_strstart(url, "http", NULL); - if (!in && c->http_persistent && c->playlist_pb) { + if (is_http && !in && c->http_persistent && c->playlist_pb) { in = c->playlist_pb; ret = open_url_keepalive(c->ctx, &c->playlist_pb, url); if (ret == AVERROR_EXIT) { @@ -760,7 +761,7 @@ static int parse_playlist(HLSContext *c, const char *url, if (ret < 0) return ret; - if (c->http_persistent) + if (is_http && c->http_persistent) c->playlist_pb = in; else close_in = 1; _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog