diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2015-12-04 21:44:05 +0100 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2015-12-06 12:40:51 +0100 |
commit | c02a9f1c6e8c72f0e7cf2d039a06caa66fc668c6 (patch) | |
tree | 075178594d6d11782db9e164610a2fcc8ed91485 | |
parent | bafd5c3c80a4a9ee8f5c0e67320c6e0bf3869101 (diff) | |
download | ffmpeg-c02a9f1c6e8c72f0e7cf2d039a06caa66fc668c6.tar.gz |
swscale/utils: Fix for runtime error: left shift of negative value -1
Fixes: c106b36fa36db8ff8f3ed0c82be7bea2/asan_heap-oob_32699f0_6321_467b9a1d7e03d7cfd310b7e65dc53bcc.mov
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit 325b59368dae3c3f2f5cc39873002b4cf133ccbc)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r-- | libswscale/utils.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libswscale/utils.c b/libswscale/utils.c index 84c58ca5f5..66d28317af 100644 --- a/libswscale/utils.c +++ b/libswscale/utils.c @@ -391,7 +391,7 @@ static av_cold int initFilter(int16_t **outFilter, int32_t **filterPos, xDstInSrc = ((dstPos*(int64_t)xInc)>>7) - ((srcPos*0x10000LL)>>7); for (i = 0; i < dstW; i++) { - int xx = (xDstInSrc - ((int64_t)(filterSize - 2) << 16)) / (1 << 17); + int xx = (xDstInSrc - (filterSize - 2) * (1LL<<16)) / (1 << 17); int j; (*filterPos)[i] = xx; for (j = 0; j < filterSize; j++) { |