aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2017-05-28 03:03:46 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2017-05-28 04:04:09 +0200
commit1a800e8ff670cfca4fe40bc8cca5490dd6f93d90 (patch)
tree5613d6efd50be3c295da8239481138a3faa787a0
parent3ad48f9acb19c5eb233cd0f1aa90e085cce54cba (diff)
downloadffmpeg-1a800e8ff670cfca4fe40bc8cca5490dd6f93d90.tar.gz
avcodec/ivi_dsp: Fix runtime error: left shift of negative value -2
Fixes: 1839/clusterfuzz-testcase-minimized-6238490993885184 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 357f2316a08478a4442e8051978c7b161e10281c) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/ivi_dsp.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/ivi_dsp.c b/libavcodec/ivi_dsp.c
index 7922751fdc..2286c58033 100644
--- a/libavcodec/ivi_dsp.c
+++ b/libavcodec/ivi_dsp.c
@@ -393,8 +393,8 @@ void ff_ivi_inverse_haar_4x4(const int32_t *in, int16_t *out, uint32_t pitch,
if (flags[i]) {
/* pre-scaling */
shift = !(i & 2);
- sp1 = src[0] << shift;
- sp2 = src[4] << shift;
+ sp1 = src[0] * (1 << shift);
+ sp2 = src[4] * (1 << shift);
INV_HAAR4( sp1, sp2, src[8], src[12],
dst[0], dst[4], dst[8], dst[12],
t0, t1, t2, t3, t4);