[FFmpeg-cvslog] avcodec/tiff: Avoid abort with DNG RAW TIFF with YA8
Michael Niedermayer
git at videolan.org
Wed Aug 26 21:32:00 EEST 2020
ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Thu Aug 20 00:59:35 2020 +0200| [ca47402a06922f5280b4526007e32bf7847c7430] | committer: Michael Niedermayer
avcodec/tiff: Avoid abort with DNG RAW TIFF with YA8
Fixes: Assertion failure
Fixes: 24707/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_TIFF_fuzzer-5179910197608448
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ca47402a06922f5280b4526007e32bf7847c7430
---
libavcodec/tiff.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libavcodec/tiff.c b/libavcodec/tiff.c
index 8c0b6f0853..8a5f6e030d 100644
--- a/libavcodec/tiff.c
+++ b/libavcodec/tiff.c
@@ -709,7 +709,7 @@ static int tiff_unpack_strip(TiffContext *s, AVFrame *p, uint8_t *dst, int strid
if (is_dng) {
int is_u16, pixel_size_bytes, pixel_size_bits, elements;
- is_u16 = (s->bpp > 8);
+ is_u16 = (s->bpp / s->bppcount > 8);
pixel_size_bits = (is_u16 ? 16 : 8);
pixel_size_bytes = (is_u16 ? sizeof(uint16_t) : sizeof(uint8_t));
More information about the ffmpeg-cvslog
mailing list