aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2017-06-11 00:45:20 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2017-06-16 01:05:30 +0200
commit9a8419541f2b91b1d88425042cc4b69bf1f415bf (patch)
treee25014c05787c99a299bd3b5ee573dfea56eef96
parentef157cec81308476deaf129f799884dea7aac339 (diff)
downloadffmpeg-9a8419541f2b91b1d88425042cc4b69bf1f415bf.tar.gz
avcodec/ra144: Fix runtime error: signed integer overflow: -2200 * 1033073 cannot be represented in type 'int'
Fixes: 2175/clusterfuzz-testcase-minimized-5809657849315328 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 71da0a5c9750e9fd0c9609470f610d32952923eb) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/ra144.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/ra144.c b/libavcodec/ra144.c
index 2ed7361e38..c077b7b327 100644
--- a/libavcodec/ra144.c
+++ b/libavcodec/ra144.c
@@ -1601,7 +1601,7 @@ void ff_eval_coefs(int *coefs, const int *refl)
b1[i] = refl[i] * 16;
for (j=0; j < i; j++)
- b1[j] = ((refl[i] * b2[i-j-1]) >> 12) + b2[j];
+ b1[j] = ((int)(refl[i] * (unsigned)b2[i-j-1]) >> 12) + b2[j];
FFSWAP(int *, b1, b2);
}