aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2021-09-03 16:51:07 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2021-09-26 17:21:40 +0200
commit018b611b4ba74a5cecfb8a75a637b49840e7c320 (patch)
tree0555465f1f4694b5c07cbcf2a54949ad7eed026f
parent32329397e289cc70550f110b72820ef3d219f7e0 (diff)
downloadffmpeg-018b611b4ba74a5cecfb8a75a637b49840e7c320.tar.gz
avcodec/utils: ARGO writes 4x4 blocks without regard to the image dimensions
Fixes: out of array access Fixes: 37197/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_ARGO_fuzzer-5877046382297088 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/utils.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/utils.c b/libavcodec/utils.c
index 387d285633..b4076d94f2 100644
--- a/libavcodec/utils.c
+++ b/libavcodec/utils.c
@@ -298,6 +298,12 @@ void avcodec_align_dimensions2(AVCodecContext *s, int *width, int *height,
h_align = 4;
}
break;
+ case AV_PIX_FMT_BGR0:
+ if (s->codec_id == AV_CODEC_ID_ARGO) {
+ w_align = 4;
+ h_align = 4;
+ }
+ break;
default:
break;
}