You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-15 14:13:16 +02:00
avcodec/mlpdec: add max channels check
Fixes: out of array access Fixes: 51648/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TRUEHD_fuzzer-4644322217164800 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
@@ -547,6 +547,9 @@ static int read_restart_header(MLPDecodeContext *m, GetBitContext *gbp,
|
|||||||
return AVERROR_PATCHWELCOME;
|
return AVERROR_PATCHWELCOME;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (max_channel + 1 > MAX_CHANNELS || max_channel + 1 < min_channel)
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
|
|
||||||
s->min_channel = min_channel;
|
s->min_channel = min_channel;
|
||||||
s->max_channel = max_channel;
|
s->max_channel = max_channel;
|
||||||
s->coded_channels = ((1LL << (max_channel - min_channel + 1)) - 1) << min_channel;
|
s->coded_channels = ((1LL << (max_channel - min_channel + 1)) - 1) << min_channel;
|
||||||
|
Reference in New Issue
Block a user