hevc: Clip the pixel before shifting

Prevent an out of array bound read.

Fixes: asan_stack-oob_eae8e3_7333_WPP_B_ericsson_MAIN10_2.bit
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 5856bca360)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Luca Barbato
2014-01-11 16:52:41 +01:00
committed by Michael Niedermayer
parent 706dca18d0
commit 738a2a04b6

View File

@@ -391,7 +391,7 @@ static void FUNC(sao_band_filter)(uint8_t *_dst, uint8_t *_src,
offset_table[(k + sao_left_class) & 31] = sao_offset_val[k + 1];
for (y = 0; y < height; y++) {
for (x = 0; x < width; x++)
dst[x] = av_clip_pixel(src[x] + offset_table[av_clip_pixel(src[x] >> shift)]);
dst[x] = av_clip_pixel(src[x] + offset_table[av_clip_pixel(src[x]) >> shift]);
dst += stride;
src += stride;
}