[FFmpeg-devel] [PATCH 2/5] avcodec/magicyuv: Free previous VLC table

Michael Niedermayer michael at niedermayer.cc
Mon Nov 2 02:21:25 EET 2020


Fixes: memleak
Fixes: 26788/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_MAGICYUV_fuzzer-5184116808744960

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
---
 libavcodec/magicyuv.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/libavcodec/magicyuv.c b/libavcodec/magicyuv.c
index f13351e5b5..be9d2ac561 100644
--- a/libavcodec/magicyuv.c
+++ b/libavcodec/magicyuv.c
@@ -411,6 +411,7 @@ static int build_huffman(AVCodecContext *avctx, const uint8_t *table,
 
         if (j == max) {
             j = 0;
+            ff_free_vlc(&s->vlc[i]);
             if (huff_build(he, length_count, &s->vlc[i], max)) {
                 av_log(avctx, AV_LOG_ERROR, "Cannot build Huffman codes\n");
                 return AVERROR_INVALIDDATA;
-- 
2.17.1



More information about the ffmpeg-devel mailing list