[FFmpeg-cvslog] swscale: Fix an undefined behaviour
Luca Barbato
git at videolan.org
Mon May 5 00:09:37 CEST 2014
ffmpeg | branch: release/1.1 | Luca Barbato <lu_zero at gentoo.org> | Fri May 2 00:21:23 2014 +0200| [9a2387cfb1a99e4b00593c22074929cdc73410f0] | committer: Reinhard Tartler
swscale: Fix an undefined behaviour
Prevent a division by zero down the codepath.
Sample-Id: 00001721-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable at libav.org
(cherry picked from commit 3a177a9cca924e097265b32f9282814f6b653e08)
(cherry picked from commit 0499f7809c1fcc33ed710cdf771a18b374702135)
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9a2387cfb1a99e4b00593c22074929cdc73410f0
---
libswscale/utils.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libswscale/utils.c b/libswscale/utils.c
index f0a2b46..23eb4a4 100644
--- a/libswscale/utils.c
+++ b/libswscale/utils.c
@@ -316,7 +316,7 @@ static int initFilter(int16_t **outFilter, int32_t **filterPos,
xDstInSrc = xInc - 0x10000;
for (i = 0; i < dstW; i++) {
- int xx = (xDstInSrc - ((filterSize - 2) << 16)) / (1 << 17);
+ int xx = (xDstInSrc - ((int64_t)(filterSize - 2) << 16)) / (1 << 17);
int j;
(*filterPos)[i] = xx;
for (j = 0; j < filterSize; j++) {
More information about the ffmpeg-cvslog
mailing list