svq3: Avoid a division by zero

If the height is zero, the decompression will probably end up
failing due to not fitting into the allocated buffer later
anyway, so this doesn't need any more elaborate check.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
(cherry picked from commit 601c2015bc)
This commit is contained in:
Martin Storsjö
2013-09-19 15:58:59 +03:00
committed by Luca Barbato
parent 99f953b3fe
commit 3ee5458aa8

View File

@@ -956,7 +956,8 @@ static av_cold int svq3_decode_init(AVCodecContext *avctx)
int offset = get_bits_count(&gb) + 7 >> 3;
uint8_t *buf;
if ((uint64_t)watermark_width * 4 > UINT_MAX / watermark_height)
if (watermark_height > 0 &&
(uint64_t)watermark_width * 4 > UINT_MAX / watermark_height)
return -1;
buf = av_malloc(buf_len);