Commit 7d4a1ff3 authored by Luca Barbato's avatar Luca Barbato Committed by Vittorio Giovara

mpegvideo: Fix undefined negative shifts in ff_init_block_index

Found-by: gcc5-ubsan.
Signed-off-by: 's avatarVittorio Giovara <vittorio.giovara@gmail.com>
parent 1389b4c1
......@@ -1754,9 +1754,9 @@ void ff_init_block_index(MpegEncContext *s){ //FIXME maybe rename
s->block_index[5]= s->mb_stride*(s->mb_y + s->mb_height + 2) + s->b8_stride*s->mb_height*2 + s->mb_x - 1;
//block_index is not used by mpeg2, so it is not affected by chroma_format
s->dest[0] = s->current_picture.f->data[0] + ((s->mb_x - 1) << mb_size);
s->dest[1] = s->current_picture.f->data[1] + ((s->mb_x - 1) << (mb_size - s->chroma_x_shift));
s->dest[2] = s->current_picture.f->data[2] + ((s->mb_x - 1) << (mb_size - s->chroma_x_shift));
s->dest[0] = s->current_picture.f->data[0] + (s->mb_x - 1) * (1 << mb_size);
s->dest[1] = s->current_picture.f->data[1] + (s->mb_x - 1) * (1 << (mb_size - s->chroma_x_shift));
s->dest[2] = s->current_picture.f->data[2] + (s->mb_x - 1) * (1 << (mb_size - s->chroma_x_shift));
if(!(s->pict_type==AV_PICTURE_TYPE_B && s->avctx->draw_horiz_band && s->picture_structure==PICT_FRAME))
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment