diff --git a/libavformat/hls.c b/libavformat/hls.c index 2bf86fadc6..e762bc19fc 100644 --- a/libavformat/hls.c +++ b/libavformat/hls.c @@ -1593,6 +1593,19 @@ static void update_noheader_flag(AVFormatContext *s) s->ctx_flags &= ~AVFMTCTX_NOHEADER; } +static int hls_close(AVFormatContext *s) +{ + HLSContext *c = s->priv_data; + + free_playlist_list(c); + free_variant_list(c); + free_rendition_list(c); + + av_dict_free(&c->avio_opts); + + return 0; +} + static int hls_read_header(AVFormatContext *s) { void *u = (s->flags & AVFMT_FLAG_CUSTOM_IO) ? NULL : s->pb; @@ -2013,19 +2026,6 @@ static int hls_read_packet(AVFormatContext *s, AVPacket *pkt) return AVERROR_EOF; } -static int hls_close(AVFormatContext *s) -{ - HLSContext *c = s->priv_data; - - free_playlist_list(c); - free_variant_list(c); - free_rendition_list(c); - - av_dict_free(&c->avio_opts); - - return 0; -} - static int hls_read_seek(AVFormatContext *s, int stream_index, int64_t timestamp, int flags) {