summaryrefslogtreecommitdiff
path: root/libavformat/hlsenc.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavformat/hlsenc.c')
-rw-r--r--libavformat/hlsenc.c8
1 files 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++)