avcodec/hq_hqa: Fix runtime error: left shift of negative value -207
authorMichael Niedermayer <michael@niedermayer.cc>
Sat, 6 May 2017 17:11:46 +0000 (19:11 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Sat, 6 May 2017 17:12:14 +0000 (19:12 +0200)
Fixes: 1375/clusterfuzz-testcase-minimized-6070134701555712

Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/hq_hqa.c

index 5cf5fcf..80dc6b5 100644 (file)
@@ -68,11 +68,11 @@ static int hq_decode_block(HQContext *c, GetBitContext *gb, int16_t block[64],
     memset(block, 0, 64 * sizeof(*block));
 
     if (!is_hqa) {
-        block[0] = get_sbits(gb, 9) << 6;
+        block[0] = get_sbits(gb, 9) * 64;
         q = ff_hq_quants[qsel][is_chroma][get_bits(gb, 2)];
     } else {
         q = ff_hq_quants[qsel][is_chroma][get_bits(gb, 2)];
-        block[0] = get_sbits(gb, 9) << 6;
+        block[0] = get_sbits(gb, 9) * 64;
     }
 
     for (;;) {