avcodec/alsdec: Fixes invalid shifts in read_var_block_data() and INTERLEAVE_OUTPUT()
authorMichael Niedermayer <michael@niedermayer.cc>
Wed, 19 Jun 2019 19:53:43 +0000 (21:53 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Sat, 6 Jul 2019 21:05:11 +0000 (23:05 +0200)
commit10562175405277ac24f02ee2d29455169b1b54e0
tree8444c1a0022017486f09f8f2446cb65f7b137268
parentdf61ec263faa1408a0a63bad2d3d5bf0462dadb2
avcodec/alsdec: Fixes invalid shifts in read_var_block_data() and INTERLEAVE_OUTPUT()

Fixes: left shift of negative value -6
Fixes: 15275/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ALS_fuzzer-5742361767837696
Fixes: signed integer overflow: 41582592 * 256 cannot be represented in type 'int'
Fixes: 15296/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ALS_fuzzer-5739558227935232

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 e131568752ad41222946304c61eadb87b0a24791)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/alsdec.c