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>
This commit is contained in:
Michael Niedermayer 2015-12-04 21:44:05 +01:00
parent 4f2419888b
commit 325b59368d
1 changed files with 1 additions and 1 deletions

View File

@ -386,7 +386,7 @@ static av_cold int initFilter(int16_t **outFilter, int32_t **filterPos,
xDstInSrc = ((dstPos*(int64_t)xInc)>>7) - ((srcPos*0x10000LL)>>7); xDstInSrc = ((dstPos*(int64_t)xInc)>>7) - ((srcPos*0x10000LL)>>7);
for (i = 0; i < dstW; i++) { 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; int j;
(*filterPos)[i] = xx; (*filterPos)[i] = xx;
for (j = 0; j < filterSize; j++) { for (j = 0; j < filterSize; j++) {