mirror of https://git.ffmpeg.org/ffmpeg.git
avformat/iamf_writer: Don't leak on error when adding ParamDefinition
Fix this by postponing the allocation. Fixes Coverity issue #1559545. Reviewed-by: James Almer <jamrial@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
86410e55ad
commit
94fadd335b
|
@ -138,10 +138,6 @@ static IAMFParamDefinition *add_param_definition(IAMFContext *iamf, AVIAMFParamD
|
||||||
|
|
||||||
iamf->param_definitions = tmp;
|
iamf->param_definitions = tmp;
|
||||||
|
|
||||||
param_definition = av_mallocz(sizeof(*param_definition));
|
|
||||||
if (!param_definition)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
if (audio_element)
|
if (audio_element)
|
||||||
codec_config = iamf->codec_configs[audio_element->codec_config_id];
|
codec_config = iamf->codec_configs[audio_element->codec_config_id];
|
||||||
|
|
||||||
|
@ -160,6 +156,10 @@ static IAMFParamDefinition *add_param_definition(IAMFContext *iamf, AVIAMFParamD
|
||||||
param->constant_subblock_duration = codec_config->nb_samples;
|
param->constant_subblock_duration = codec_config->nb_samples;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
param_definition = av_mallocz(sizeof(*param_definition));
|
||||||
|
if (!param_definition)
|
||||||
|
return NULL;
|
||||||
|
|
||||||
param_definition->mode = !!param->duration;
|
param_definition->mode = !!param->duration;
|
||||||
param_definition->param = param;
|
param_definition->param = param;
|
||||||
param_definition->audio_element = audio_element;
|
param_definition->audio_element = audio_element;
|
||||||
|
|
Loading…
Reference in New Issue