Commit c55e6370 authored by Michael Niedermayer's avatar Michael Niedermayer

avcodec/ac3dec: Fix: runtime error: index -1 out of bounds for type 'INTFLOAT [2]'

It seems dual mono with a LFE channel is not forbidden

Fixes: 1570/clusterfuzz-testcase-minimized-6455337349545984

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpegSigned-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent b9232132
...@@ -1389,7 +1389,7 @@ static int decode_audio_block(AC3DecodeContext *s, int blk) ...@@ -1389,7 +1389,7 @@ static int decode_audio_block(AC3DecodeContext *s, int blk)
for (ch = 1; ch <= s->channels; ch++) { for (ch = 1; ch <= s->channels; ch++) {
int audio_channel = 0; int audio_channel = 0;
INTFLOAT gain; INTFLOAT gain;
if (s->channel_mode == AC3_CHMODE_DUALMONO) if (s->channel_mode == AC3_CHMODE_DUALMONO && ch <= 2)
audio_channel = 2-ch; audio_channel = 2-ch;
if (s->heavy_compression && s->compression_exists[audio_channel]) if (s->heavy_compression && s->compression_exists[audio_channel])
gain = s->heavy_dynamic_range[audio_channel]; gain = s->heavy_dynamic_range[audio_channel];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment