From bbf306742cd289929a423d5de847e6053aeaefa2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Reimar=20D=C3=B6ffinger?= <Reimar.Doeffinger@gmx.de>
Date: Sun, 31 May 2009 11:47:52 +0000
Subject: [PATCH] Fix memleak due to c->decomp_buf never being freed.

Originally committed as revision 19064 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavcodec/lcldec.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavcodec/lcldec.c b/libavcodec/lcldec.c
index 0d563032980..53637f25076 100644
--- a/libavcodec/lcldec.c
+++ b/libavcodec/lcldec.c
@@ -573,6 +573,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
         zret = inflateInit(&c->zstream);
         if (zret != Z_OK) {
             av_log(avctx, AV_LOG_ERROR, "Inflate init error: %d\n", zret);
+            av_freep(&c->decomp_buf);
             return 1;
         }
     }
@@ -590,6 +591,7 @@ static av_cold int decode_end(AVCodecContext *avctx)
 {
     LclDecContext * const c = avctx->priv_data;
 
+    av_freep(&c->decomp_buf);
     if (c->pic.data[0])
         avctx->release_buffer(avctx, &c->pic);
 #if CONFIG_ZLIB_DECODER
-- 
GitLab