[FFmpeg-devel] [PATCH] fftools/ffmpeg_mux_init: Return error upon error
Anton Khirnov
anton at khirnov.net
Tue Jun 11 08:35:49 EEST 2024
Quoting Andreas Rheinhardt (2024-06-10 15:24:49)
> Currently it may return an uninitialized value.
> Introduced in 840f2bc18eddd72fa886aec30efc82991b920c45.
> Fixes Coverity issue #1603565.
>
> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
> ---
> fftools/ffmpeg_mux_init.c | 9 ++++++---
> 1 file changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/fftools/ffmpeg_mux_init.c b/fftools/ffmpeg_mux_init.c
> index b1cb6cf7bd..1953655135 100644
> --- a/fftools/ffmpeg_mux_init.c
> +++ b/fftools/ffmpeg_mux_init.c
> @@ -3022,10 +3022,13 @@ static int parse_forced_key_frames(void *log, KeyframeForceCtx *kf,
> unsigned int nb_ch = mux->fc->nb_chapters;
> int j;
>
> - if (nb_ch > INT_MAX - size ||
> - !(pts = av_realloc_f(pts, size += nb_ch - 1,
> - sizeof(*pts))))
> + if (nb_ch > INT_MAX - size) {
> + ret = AVERROR(ERANGE);
> goto fail;
> + }
> + pts = av_realloc_f(pts, size += nb_ch - 1, sizeof(*pts));
> + if (!pts)
> + return AVERROR(ENOMEM);
Looks good.
Would look even better with the size increment outside of the
av_realloc_f() call.
--
Anton Khirnov
More information about the ffmpeg-devel
mailing list