diff --git a/libavformat/ffmdec.c b/libavformat/ffmdec.c index c5917a1246..1bd380b6a8 100644 --- a/libavformat/ffmdec.c +++ b/libavformat/ffmdec.c @@ -379,8 +379,10 @@ FF_ENABLE_DEPRECATION_WARNINGS goto fail; } codecpar->extradata = av_mallocz(size + AV_INPUT_BUFFER_PADDING_SIZE); - if (!codecpar->extradata) - return AVERROR(ENOMEM); + if (!codecpar->extradata) { + ret = AVERROR(ENOMEM); + goto fail; + } codecpar->extradata_size = size; avio_read(pb, codecpar->extradata, size); } @@ -690,8 +692,10 @@ FF_ENABLE_DEPRECATION_WARNINGS goto fail; } codecpar->extradata = av_mallocz(size + AV_INPUT_BUFFER_PADDING_SIZE); - if (!codecpar->extradata) - return AVERROR(ENOMEM); + if (!codecpar->extradata) { + ret = AVERROR(ENOMEM); + goto fail; + } codecpar->extradata_size = size; avio_read(pb, codecpar->extradata, size); }