avcodec/aacps: Fix runtime error: left shift of 1073741824 by 1 places cannot be...
authorMichael Niedermayer <michael@niedermayer.cc>
Fri, 2 Jun 2017 20:31:02 +0000 (22:31 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Fri, 2 Jun 2017 22:09:58 +0000 (00:09 +0200)
Fixes: 2005/clusterfuzz-testcase-minimized-5744226438479872

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

index 31e072d..29de8a5 100644 (file)
@@ -947,7 +947,7 @@ static void stereo_processing(PSContext *ps, INTFLOAT (*l)[32][2], INTFLOAT (*r)
             int stop  = ps->border_position[e+1];
             INTFLOAT width = Q30(1.f) / ((stop - start) ? (stop - start) : 1);
 #if USE_FIXED
-            width <<= 1;
+            width = FFMIN(2U*width, INT_MAX);
 #endif
             b = k_to_i[k];
             h[0][0] = H11[0][e][b];