diff --git a/libavformat/hls.c b/libavformat/hls.c index f17b826f30..4fdda3408c 100644 --- a/libavformat/hls.c +++ b/libavformat/hls.c @@ -1313,14 +1313,14 @@ static int hls_read_header(AVFormatContext *s) struct playlist *pls = c->playlists[i]; AVInputFormat *in_fmt = NULL; - if (pls->n_segments == 0) - continue; - if (!(pls->ctx = avformat_alloc_context())) { ret = AVERROR(ENOMEM); goto fail; } + if (pls->n_segments == 0) + continue; + pls->index = i; pls->needed = 1; pls->parent = s;