From: Michael Niedermayer Date: Wed, 25 Mar 2015 17:30:00 +0000 (+0100) Subject: swscale/output: Fix undefined shifts X-Git-Tag: n2.7~1342 X-Git-Url: http://git.videolan.org/?p=ffmpeg.git;a=commitdiff_plain;h=bdcd36a4c81c50254f6204e83e0c14adc1391e66;hp=3a6df0b4bb588288fbf0f60081b20022a838ea79 swscale/output: Fix undefined shifts Fixes: da14e86d8462be6493eab16bc2d40f88/asan_heap-oob_204cfd2_528_cov_340150052_COMPRESS.BMP Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer --- diff --git a/libswscale/output.c b/libswscale/output.c index 88fa2b57ae..6048e2bbd7 100644 --- a/libswscale/output.c +++ b/libswscale/output.c @@ -1709,8 +1709,8 @@ yuv2rgb_full_1_c_template(SwsContext *c, const int16_t *buf0, int A = 0; //init to silence warning for (i = 0; i < dstW; i++) { int Y = buf0[i] << 2; - int U = (ubuf0[i] - (128<<7)) << 2; - int V = (vbuf0[i] - (128<<7)) << 2; + int U = (ubuf0[i] - (128<<7)) * 4; + int V = (vbuf0[i] - (128<<7)) * 4; if (hasAlpha) { A = (abuf0[i] + 64) >> 7;