mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-13 21:28:01 +02:00
avcodec/xwddec: Check bpp more completely
Fixes out of array access Fixes: 1399/clusterfuzz-testcase-minimized-4866094172995584 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
a5e0dbf530
commit
441026fcb1
@ -157,9 +157,9 @@ static int xwd_decode_frame(AVCodecContext *avctx, void *data,
|
|||||||
case XWD_GRAY_SCALE:
|
case XWD_GRAY_SCALE:
|
||||||
if (bpp != 1 && bpp != 8)
|
if (bpp != 1 && bpp != 8)
|
||||||
return AVERROR_INVALIDDATA;
|
return AVERROR_INVALIDDATA;
|
||||||
if (pixdepth == 1) {
|
if (bpp == 1 && pixdepth == 1) {
|
||||||
avctx->pix_fmt = AV_PIX_FMT_MONOWHITE;
|
avctx->pix_fmt = AV_PIX_FMT_MONOWHITE;
|
||||||
} else if (pixdepth == 8) {
|
} else if (bpp == 8 && pixdepth == 8) {
|
||||||
avctx->pix_fmt = AV_PIX_FMT_GRAY8;
|
avctx->pix_fmt = AV_PIX_FMT_GRAY8;
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
Loading…
Reference in New Issue
Block a user