aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2023-09-05 02:17:40 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2023-09-25 21:41:35 +0200
commitd897f82cf8f39cdb770ab433b018ebd840bb2237 (patch)
tree48fd183cff6abea75ee127edbe6a61b9587cd192
parentfb05bc8eee95e1b08b6d30fbb611161c4feaf76b (diff)
downloadffmpeg-d897f82cf8f39cdb770ab433b018ebd840bb2237.tar.gz
avcodec/vmixdec: Fix signed integer overflow in dc
Fixes: signed integer overflow: 2147483181 + 1024 cannot be represented in type 'int' Fixes: 61117/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_VMIX_fuzzer-5387692433866752 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/vmixdec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/vmixdec.c b/libavcodec/vmixdec.c
index 962ab8339b..d6b6e3557f 100644
--- a/libavcodec/vmixdec.c
+++ b/libavcodec/vmixdec.c
@@ -148,7 +148,7 @@ static int decode_dcac(AVCodecContext *avctx,
ac_run = get_ue_golomb_long(ac_gb);
}
- block[0] = (dc << lshift) + add;
+ block[0] = ((unsigned)dc << lshift) + (unsigned)add;
s->idsp.idct_put(dst + x, linesize, block);
}