From d1fe1344ea9890a29badd3ff48b600eb5225dca8 Mon Sep 17 00:00:00 2001 From: Steven Liu Date: Tue, 20 Aug 2019 10:29:04 +0800 Subject: [PATCH] avformat/hlsenc: fix memleak in update_variant_stream_info Signed-off-by: Steven Liu --- libavformat/hlsenc.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c index 836e290eea..c740cf2c56 100644 --- a/libavformat/hlsenc.c +++ b/libavformat/hlsenc.c @@ -2131,14 +2131,18 @@ static int update_variant_stream_info(AVFormatContext *s) { hls->var_streams[0].nb_streams = s->nb_streams; hls->var_streams[0].streams = av_mallocz(sizeof(AVStream *) * hls->var_streams[0].nb_streams); - if (!hls->var_streams[0].streams) + if (!hls->var_streams[0].streams) { + av_free(hls->var_streams); return AVERROR(ENOMEM); + } //by default, the first available ccgroup is mapped to the variant stream if (hls->nb_ccstreams) { hls->var_streams[0].ccgroup = av_strdup(hls->cc_streams[0].ccgroup); - if (!hls->var_streams[0].ccgroup) + if (!hls->var_streams[0].ccgroup) { + av_free(hls->var_streams); return AVERROR(ENOMEM); + } } for (i = 0; i < s->nb_streams; i++)