diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2022-11-21 22:59:55 +0100 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2023-02-21 00:41:57 +0100 |
commit | 7c5b975f6f6db05ed96ef0183539ea69cd4f82c9 (patch) | |
tree | ecea1f6d49f579097aba4dbd21b53f0f9820ccf2 | |
parent | c1780eeccf4f2985b5e6e024230d5235cedd1d8f (diff) | |
download | ffmpeg-7c5b975f6f6db05ed96ef0183539ea69cd4f82c9.tar.gz |
avcodec/mlpdec: Check max matrix instead of max channel in noise check
This is a regression since: adaa06581c5444c94eef72d61b8166f096e2687a
Before this, max_channel and max_matrix_channel where compared for equality
Fixes: out of array access
Fixes: 53340/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TRUEHD_fuzzer-514959011885875
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit aa79560de5e9596ada0345e5d12aa00dbeddaaa6)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libavcodec/mlpdec.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/mlpdec.c b/libavcodec/mlpdec.c index caf35dca0e..6af63c4631 100644 --- a/libavcodec/mlpdec.c +++ b/libavcodec/mlpdec.c @@ -549,7 +549,7 @@ static int read_restart_header(MLPDecodeContext *m, GetBitContext *gbp, /* This should happen for TrueHD streams with >6 channels and MLP's noise * type. It is not yet known if this is allowed. */ - if (max_channel > MAX_MATRIX_CHANNEL_MLP && !noise_type) { + if (max_matrix_channel > MAX_MATRIX_CHANNEL_MLP && !noise_type) { avpriv_request_sample(m->avctx, "%d channels (more than the " "maximum supported by the decoder)", |