From 492310ec6effcbd67ee6e768c84aceadc5683093 Mon Sep 17 00:00:00 2001 From: James Almer Date: Fri, 31 Oct 2025 15:56:40 -0300 Subject: [PATCH] fftools/ffmpeg_demux: fix memory leak when creating tile grid filtergraphs If av_packet_side_data_to_frame() fails, graph_str will leak. Fixes CID 1668266. Signed-off-by: James Almer --- fftools/ffmpeg_demux.c | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/fftools/ffmpeg_demux.c b/fftools/ffmpeg_demux.c index 29ef86b7c9..cb79dd7611 100644 --- a/fftools/ffmpeg_demux.c +++ b/fftools/ffmpeg_demux.c @@ -1702,17 +1702,22 @@ static int istg_parse_tile_grid(const OptionsContext *o, Demuxer *d, InputStream ret = av_packet_side_data_to_frame(&opts.side_data, &opts.nb_side_data, sd, 0); if (ret < 0 && ret != AVERROR(EINVAL)) - return ret; + goto fail; } ret = fg_create(NULL, &graph_str, d->sch, &opts); if (ret < 0) - return ret; + goto fail; istg->fg = filtergraphs[nb_filtergraphs-1]; istg->fg->is_internal = 1; - return 0; + ret = 0; +fail: + if (ret < 0) + av_freep(&graph_str); + + return ret; } static int istg_add(const OptionsContext *o, Demuxer *d, AVStreamGroup *stg)