[FFmpeg-cvslog] avfilter/vf_random: fix memory leaks

Paul B Mahol git at videolan.org
Thu May 5 23:33:51 EEST 2022


ffmpeg | branch: release/2.8 | Paul B Mahol <onemda at gmail.com> | Thu Oct 17 11:28:55 2019 +0200| [4f566654e744c7810f4afdd91fe00fdd1ef46646] | committer: Michael Niedermayer

avfilter/vf_random: fix memory leaks

Fixes #8296

(cherry picked from commit 3488e0977c671568731afa12b811adce9d4d807f)
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4f566654e744c7810f4afdd91fe00fdd1ef46646
---

 libavfilter/vf_random.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/libavfilter/vf_random.c b/libavfilter/vf_random.c
index 663fafc24d..cbff2f1ead 100644
--- a/libavfilter/vf_random.c
+++ b/libavfilter/vf_random.c
@@ -114,6 +114,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",
@@ -139,6 +147,7 @@ AVFilter ff_vf_random = {
     .priv_size   = sizeof(RandomContext),
     .priv_class  = &random_class,
     .init        = init,
+    .uninit      = uninit,
     .inputs      = random_inputs,
     .outputs     = random_outputs,
 };



More information about the ffmpeg-cvslog mailing list