From ca5ffb7f46b72dda1bfb66956acb6fbfda3a909a Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Mon, 10 Jun 2024 21:24:47 +0200 Subject: [PATCH] avfilter/af_aresample: Cleanup on av_channel_layout_copy() failure Fixes: CID1503078 Resource leak Sponsored-by: Sovereign Tech Fund Signed-off-by: Michael Niedermayer (cherry picked from commit 7a0ea15c7afb8abd823303b9a525cc5e6572f199) Signed-off-by: Michael Niedermayer --- libavfilter/af_aresample.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/libavfilter/af_aresample.c b/libavfilter/af_aresample.c index d6bd77beb3..8ff2fe5973 100644 --- a/libavfilter/af_aresample.c +++ b/libavfilter/af_aresample.c @@ -195,8 +195,11 @@ static int filter_frame(AVFilterLink *inlink, AVFrame *insamplesref) av_frame_copy_props(outsamplesref, insamplesref); outsamplesref->format = outlink->format; ret = av_channel_layout_copy(&outsamplesref->ch_layout, &outlink->ch_layout); - if (ret < 0) + if (ret < 0) { + av_frame_free(&outsamplesref); + av_frame_free(&insamplesref); return ret; + } outsamplesref->sample_rate = outlink->sample_rate; if(insamplesref->pts != AV_NOPTS_VALUE) {