diff --git a/libavcodec/libaacplus.c b/libavcodec/libaacplus.c index 545e240ca6..9087d00635 100644 --- a/libavcodec/libaacplus.c +++ b/libavcodec/libaacplus.c @@ -82,6 +82,10 @@ static av_cold int aacPlus_encode_init(AVCodecContext *avctx) if (aacplusEncGetDecoderSpecificInfo(s->aacplus_handle, &buffer, &decoder_specific_info_size) == 1) { avctx->extradata = av_malloc(decoder_specific_info_size + FF_INPUT_BUFFER_PADDING_SIZE); + if (!avctx->extradata) { + free(buffer); + return AVERROR(ENOMEM); + } avctx->extradata_size = decoder_specific_info_size; memcpy(avctx->extradata, buffer, avctx->extradata_size); }