From 2a9ed44fe2bb2d85cb70adaacfc816b991451758 Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Sun, 10 May 2020 21:16:59 +0200 Subject: [PATCH] avcodec/utvideodec: Fix integer overflow in decode_plane() Fixes: signed integer overflow: 2147483594 + 142 cannot be represented in type 'int' Fixes: 20492/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_UTVIDEO_fuzzer-5658568101724160 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer (cherry picked from commit 876cfa67f37e944b0f42cb67b2de4e2e06f52e82) Signed-off-by: Michael Niedermayer --- libavcodec/utvideodec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libavcodec/utvideodec.c b/libavcodec/utvideodec.c index 160528e007..56aecd514e 100644 --- a/libavcodec/utvideodec.c +++ b/libavcodec/utvideodec.c @@ -109,7 +109,7 @@ static int decode_plane(UtvideoContext *c, int plane_no, for (i = 0; i < width * step; i += step) { pix = fsym; if (use_pred) { - prev += pix; + prev += (unsigned)pix; pix = prev; } dest[i] = pix;