avcodec/truemotion2: Fix integer overflow in tm2_null_res_block()
authorMichael Niedermayer <michael@niedermayer.cc>
Sat, 16 Mar 2019 01:30:57 +0000 (02:30 +0100)
committerMichael Niedermayer <michael@niedermayer.cc>
Mon, 25 Mar 2019 14:32:06 +0000 (15:32 +0100)
Fixes: signed integer overflow: 1111638592 - -2122219136 cannot be represented in type 'int'
Fixes: 13441/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TRUEMOTION2_fuzzer-5732769815068672

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 1223696c725a8ea7e80498e6ccfab37eea179b76)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/truemotion2.c

index 2945d99..bc3f168 100644 (file)
@@ -587,7 +587,8 @@ static inline void tm2_null_res_block(TM2Context *ctx, AVFrame *pic, int bx, int
 {
     int i;
     int ct;
-    int left, right, diff;
+    unsigned left, right;
+    int diff;
     int deltas[16];
     TM2_INIT_POINTERS();