diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2019-10-07 18:09:11 +0200 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2019-10-25 00:22:33 +0200 |
commit | 3948d80842f55a968a006215b62d3970cd082ee0 (patch) | |
tree | 707879c85603fd08ff344e54bf91f084cc6e3207 /libavcodec/interplayacm.c | |
parent | 4834ec926aa569cf25c797e22643d4735880b7a1 (diff) |
avcodec/interplayacm: Fix integer overflows in juggle()
Fixes: signed integer overflow: -760459023 + -1520918047 cannot be represented in type 'int'
Fixes: 17994/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_INTERPLAY_ACM_fuzzer-5647123042795520
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/interplayacm.c')
-rw-r--r-- | libavcodec/interplayacm.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libavcodec/interplayacm.c b/libavcodec/interplayacm.c index 5639d8de82..cff79eb6b2 100644 --- a/libavcodec/interplayacm.c +++ b/libavcodec/interplayacm.c @@ -435,7 +435,8 @@ static int fill_block(InterplayACMContext *s) static void juggle(int *wrap_p, int *block_p, unsigned sub_len, unsigned sub_count) { unsigned i, j; - int *p, r0, r1, r2, r3; + int *p; + unsigned int r0, r1, r2, r3; for (i = 0; i < sub_len; i++) { p = block_p; |