aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-02-09 19:40:34 +0100
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-05-20 10:51:29 +0200
commit15ccdea8b381e4e120fd5a98b98b6fde5371097f (patch)
tree21c6aaeddd2d0a0ac7fae8f0ca62a27c22dbd17f
parent126cd3821da47971405fd39d9efd162b16b28651 (diff)
downloadffmpeg-15ccdea8b381e4e120fd5a98b98b6fde5371097f.tar.gz
avfilter/vf_dedot: Fix leak of AVFrame if making it writable fails
Even in this scenario, the frame still contains references to data that won't be freed if the frame isn't unreferenced. And the AVFrame itself will leak, too. Fixes Coverity issue #1441422. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 212077eda46c4c3eb644774d2b1ccbeb3e322fff)
-rw-r--r--libavfilter/vf_dedot.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libavfilter/vf_dedot.c b/libavfilter/vf_dedot.c
index bb0f9e5ac8..ff2e0e3a79 100644
--- a/libavfilter/vf_dedot.c
+++ b/libavfilter/vf_dedot.c
@@ -312,7 +312,8 @@ static int activate(AVFilterContext *ctx)
FFMIN(s->planeheight[2],
ff_filter_get_nb_threads(ctx)));
}
- }
+ } else
+ av_frame_free(&out);
} else if (!out) {
ret = AVERROR(ENOMEM);
}