aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2024-09-19 21:57:09 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2024-09-24 15:37:15 +0200
commitf27c8b04d3059fa538db8f2db6503cbb586eb3ad (patch)
tree5459a440f4a97cd0a90621b0545d4aaf8adb67d0
parentfde8637fda8e5ac4ccfa4b137a7467e16cd631b6 (diff)
downloadffmpeg-f27c8b04d3059fa538db8f2db6503cbb586eb3ad.tar.gz
avcodec/jfdctint_template: use unsigned z* in row_fdct()
Fixes: signed integer overflow: 856827136 + 2123580416 cannot be represented in type 'int' Fixes: 70772/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_PRORES_KS_fuzzer-5180569961431040 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/jfdctint_template.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/jfdctint_template.c b/libavcodec/jfdctint_template.c
index aa2680132e..58827b677e 100644
--- a/libavcodec/jfdctint_template.c
+++ b/libavcodec/jfdctint_template.c
@@ -183,7 +183,7 @@ static av_always_inline void FUNC(row_fdct)(int16_t *data)
{
int tmp0, tmp1, tmp2, tmp3, tmp4, tmp5, tmp6, tmp7;
int tmp10, tmp11, tmp12, tmp13;
- int z1, z2, z3, z4, z5;
+ unsigned z1, z2, z3, z4, z5;
int16_t *dataptr;
int ctr;