diff options
author | Paul B Mahol <onemda@gmail.com> | 2013-09-18 11:49:58 +0000 |
---|---|---|
committer | Paul B Mahol <onemda@gmail.com> | 2013-09-18 11:56:35 +0000 |
commit | fe5b7612c0c9d1cf32c52a1edea993d6c40bdc25 (patch) | |
tree | 77c412320718c69fafc33b43ab2b3666fc4e60ad /libavfilter/vf_pullup.c | |
parent | b7e7d8cdaf3aafd9b79daa8f6ed827d05e3f8548 (diff) | |
download | ffmpeg-fe5b7612c0c9d1cf32c52a1edea993d6c40bdc25.tar.gz |
avfilter/vf_pullup: fix memleak of metrics for last PullupField
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Diffstat (limited to 'libavfilter/vf_pullup.c')
-rw-r--r-- | libavfilter/vf_pullup.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/libavfilter/vf_pullup.c b/libavfilter/vf_pullup.c index f8f888cae5..a81bc56b57 100644 --- a/libavfilter/vf_pullup.c +++ b/libavfilter/vf_pullup.c @@ -718,17 +718,17 @@ static av_cold void uninit(AVFilterContext *ctx) int i; f = s->head; - do { - if (!f) - break; - + while (f) { av_free(f->diffs); av_free(f->combs); av_free(f->vars); + if (f == s->last) { + av_freep(&s->last); + break; + } f = f->next; av_freep(&f->prev); - } while (f != s->last); - av_freep(&s->last); + }; for (i = 0; i < FF_ARRAY_ELEMS(s->buffers); i++) { av_freep(&s->buffers[i].planes[0]); |