Module: libav
Branch: release/9
Commit: 3ee5458aa8b2d789d7abedf2a4cb6aed61d09c8b

Author:    Martin Storsjö <[email protected]>
Committer: Luca Barbato <[email protected]>
Date:      Thu Sep 19 15:58:59 2013 +0300

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: [email protected]
Signed-off-by: Martin Storsjö <[email protected]>
(cherry picked from commit 601c2015bc16f0b281160292a6a760cbbbb0eacb)

---

 libavcodec/svq3.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavcodec/svq3.c b/libavcodec/svq3.c
index 683b9dc..34cda32 100644
--- a/libavcodec/svq3.c
+++ b/libavcodec/svq3.c
@@ -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);

_______________________________________________
libav-commits mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-commits

Reply via email to