Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2021-10-06 16:29:32 +0300
committerAndreas Rheinhardt <andreas.rheinhardt@outlook.com>2021-10-07 13:49:49 +0300
commit0429d8eed85674ae19cccab81f7fbb13a4ccc705 (patch)
tree291541754423a8856ee4c9b618677019b75d3bd7 /libavfilter/af_surround.c
parentcd1aaec760273bd7673b27609f114599e2d9b5a9 (diff)
avfilter/af_surround: Fix memleaks upon allocation error
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
Diffstat (limited to 'libavfilter/af_surround.c')
-rw-r--r--libavfilter/af_surround.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavfilter/af_surround.c b/libavfilter/af_surround.c
index e3601b9df0..efdf91a391 100644
--- a/libavfilter/af_surround.c
+++ b/libavfilter/af_surround.c
@@ -200,13 +200,13 @@ static int config_input(AVFilterLink *inlink)
s->rdft = av_calloc(inlink->channels, sizeof(*s->rdft));
if (!s->rdft)
return AVERROR(ENOMEM);
+ s->nb_in_channels = inlink->channels;
for (ch = 0; ch < inlink->channels; ch++) {
s->rdft[ch] = av_rdft_init(ff_log2(s->buf_size), DFT_R2C);
if (!s->rdft[ch])
return AVERROR(ENOMEM);
}
- s->nb_in_channels = inlink->channels;
s->input_levels = av_malloc_array(s->nb_in_channels, sizeof(*s->input_levels));
if (!s->input_levels)
return AVERROR(ENOMEM);
@@ -263,13 +263,13 @@ static int config_output(AVFilterLink *outlink)
s->irdft = av_calloc(outlink->channels, sizeof(*s->irdft));
if (!s->irdft)
return AVERROR(ENOMEM);
+ s->nb_out_channels = outlink->channels;
for (ch = 0; ch < outlink->channels; ch++) {
s->irdft[ch] = av_rdft_init(ff_log2(s->buf_size), IDFT_C2R);
if (!s->irdft[ch])
return AVERROR(ENOMEM);
}
- s->nb_out_channels = outlink->channels;
s->output_levels = av_malloc_array(s->nb_out_channels, sizeof(*s->output_levels));
if (!s->output_levels)
return AVERROR(ENOMEM);