X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavformat%2Fsmacker.c;h=239894dad0ae1ff33eae629b522207c15b9a431c;hb=632b8298b70969f6ab43509fd276b33295d9e336;hp=b5c858aa9b1fcf6eafee8069bfd34bef388425d1;hpb=47e12966b75490cfa5fb8ed65a48a9a3d84a7bce;p=ffmpeg diff --git a/libavformat/smacker.c b/libavformat/smacker.c index b5c858aa9b1..239894dad0a 100644 --- a/libavformat/smacker.c +++ b/libavformat/smacker.c @@ -172,8 +172,11 @@ static int smacker_read_header(AVFormatContext *s) /* init video codec */ st = avformat_new_stream(s, NULL); - if (!st) + if (!st) { + av_freep(&smk->frm_size); + av_freep(&smk->frm_flags); return AVERROR(ENOMEM); + } smk->videoindex = st->index; st->codecpar->width = smk->width; st->codecpar->height = smk->height; @@ -195,8 +198,11 @@ static int smacker_read_header(AVFormatContext *s) smk->indexes[i] = -1; if (smk->rates[i]) { ast[i] = avformat_new_stream(s, NULL); - if (!ast[i]) + if (!ast[i]) { + av_freep(&smk->frm_size); + av_freep(&smk->frm_flags); return AVERROR(ENOMEM); + } smk->indexes[i] = ast[i]->index; ast[i]->codecpar->codec_type = AVMEDIA_TYPE_AUDIO; if (smk->aflags[i] & SMK_AUD_BINKAUD) {