aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/vlc.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2023-09-20 02:30:33 +0200
committerPaul B Mahol <onemda@gmail.com>2023-09-26 12:44:15 +0200
commit768704b6406391b0d11fbccbcc54a36c938030ab (patch)
tree2541e4227fe81ce084d9db8dd6cfe9c9f0ba2a6d /libavcodec/vlc.c
parent2e04d35c69e6f8b4bdb46caa4a880c7c2ba3b141 (diff)
downloadffmpeg-768704b6406391b0d11fbccbcc54a36c938030ab.tar.gz
avcodec/vlc: free multi on fail
Fixes: leak Fixes: 62164/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_UTVIDEO_fuzzer-6449246523752448 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/vlc.c')
-rw-r--r--libavcodec/vlc.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/libavcodec/vlc.c b/libavcodec/vlc.c
index e5ec325327..dc8863855e 100644
--- a/libavcodec/vlc.c
+++ b/libavcodec/vlc.c
@@ -481,6 +481,7 @@ int ff_vlc_init_multi_from_lengths(VLC *vlc, VLC_MULTI *multi, int nb_bits, int
fail:
if (buf != localbuf)
av_free(buf);
+ ff_vlc_free_multi(multi);
return AVERROR_INVALIDDATA;
}