aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2017-05-18 02:07:17 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2017-06-02 01:14:38 +0200
commit686eb3b1ed5b91fdedc0f11d8f19bf0b21505788 (patch)
treec89a3b4ca323c8db57a22494984eb3320ee6e94c
parentb6c0ad571f609cb95b7d495d1e9a469d27e02acb (diff)
downloadffmpeg-686eb3b1ed5b91fdedc0f11d8f19bf0b21505788.tar.gz
avcodec/mlpdec: Fix: runtime error: left shift of negative value -8
Fixes: 1658/clusterfuzz-testcase-minimized-4889937130291200 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 25c81e4b737bcc737b13c9a752cb301a28cb3906) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/mlpdec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/mlpdec.c b/libavcodec/mlpdec.c
index eaf1aa7c75..5426712007 100644
--- a/libavcodec/mlpdec.c
+++ b/libavcodec/mlpdec.c
@@ -759,7 +759,7 @@ static int read_matrix_params(MLPDecodeContext *m, unsigned int substr, GetBitCo
if (get_bits1(gbp))
coeff_val = get_sbits(gbp, frac_bits + 2);
- s->matrix_coeff[mat][ch] = coeff_val << (14 - frac_bits);
+ s->matrix_coeff[mat][ch] = coeff_val * (1 << (14 - frac_bits));
}
if (s->noise_type)