diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2022-11-21 22:59:55 +0100 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2023-05-26 00:04:31 +0200 |
commit | 82dc3224b74d53a56e3a3bfe9bff5a3c1c6eaed5 (patch) | |
tree | d9ae2156819ec06b5f92d1b55680001ff7157f90 | |
parent | 1818f9f4dc4825a4434303358b636a5af3900265 (diff) | |
download | ffmpeg-82dc3224b74d53a56e3a3bfe9bff5a3c1c6eaed5.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 3139a0172f..bbb6be0996 100644 --- a/libavcodec/mlpdec.c +++ b/libavcodec/mlpdec.c @@ -520,7 +520,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)", |