[FFmpeg-cvslog] svq3: Avoid a division by zero
Martin Storsjö
git at videolan.org
Thu Jan 16 22:49:48 CET 2014
ffmpeg | branch: release/0.10 | Martin Storsjö <martin at martin.st> | Thu Sep 19 15:58:59 2013 +0300| [49c1defee5221cb8b533cc5cf731fb61f0508647] | committer: Luca Barbato
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 at libav.org
Signed-off-by: Martin Storsjö <martin at martin.st>
(cherry picked from commit 601c2015bc16f0b281160292a6a760cbbbb0eacb)
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=49c1defee5221cb8b533cc5cf731fb61f0508647
---
libavcodec/svq3.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/libavcodec/svq3.c b/libavcodec/svq3.c
index 5097af5..601afb6 100644
--- a/libavcodec/svq3.c
+++ b/libavcodec/svq3.c
@@ -902,7 +902,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);
More information about the ffmpeg-cvslog
mailing list