From c6fdee52746eb1aa2a74fc4adb368bf4a376ddf2 Mon Sep 17 00:00:00 2001 From: Paul B Mahol Date: Thu, 17 Oct 2019 11:28:55 +0200 Subject: [PATCH] avfilter/vf_random: fix memory leaks Fixes #8296 (cherry picked from commit 3488e0977c671568731afa12b811adce9d4d807f) Signed-off-by: Michael Niedermayer --- libavfilter/vf_random.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/libavfilter/vf_random.c b/libavfilter/vf_random.c index 373a7db053..c7c9ff09c0 100644 --- a/libavfilter/vf_random.c +++ b/libavfilter/vf_random.c @@ -108,6 +108,14 @@ static int request_frame(AVFilterLink *outlink) return ret; } +static av_cold void uninit(AVFilterContext *ctx) +{ + RandomContext *s = ctx->priv; + + for (int i = 0; i < s->nb_frames; i++) + av_frame_free(&s->frames[i]); +} + static const AVFilterPad random_inputs[] = { { .name = "default", @@ -132,6 +140,7 @@ AVFilter ff_vf_random = { .priv_size = sizeof(RandomContext), .priv_class = &random_class, .init = init, + .uninit = uninit, .inputs = random_inputs, .outputs = random_outputs, };