mirror of https://git.ffmpeg.org/ffmpeg.git
avcodec/lagarith: fix chroma plane width & height
Fixes out of array read Fixes: asan_heap-oob_1bf48fa_2513_lag-yuy2.avi Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
73f74f6b16
commit
e981de81fe
|
@ -675,10 +675,10 @@ static int lag_decode_frame(AVCodecContext *avctx,
|
|||
lag_decode_arith_plane(l, p->data[0], avctx->width, avctx->height,
|
||||
p->linesize[0], buf + offset_ry,
|
||||
buf_size - offset_ry);
|
||||
lag_decode_arith_plane(l, p->data[1], avctx->width / 2,
|
||||
lag_decode_arith_plane(l, p->data[1], (avctx->width + 1) / 2,
|
||||
avctx->height, p->linesize[1],
|
||||
buf + offset_gu, buf_size - offset_gu);
|
||||
lag_decode_arith_plane(l, p->data[2], avctx->width / 2,
|
||||
lag_decode_arith_plane(l, p->data[2], (avctx->width + 1) / 2,
|
||||
avctx->height, p->linesize[2],
|
||||
buf + offset_bv, buf_size - offset_bv);
|
||||
break;
|
||||
|
@ -702,11 +702,11 @@ static int lag_decode_frame(AVCodecContext *avctx,
|
|||
lag_decode_arith_plane(l, p->data[0], avctx->width, avctx->height,
|
||||
p->linesize[0], buf + offset_ry,
|
||||
buf_size - offset_ry);
|
||||
lag_decode_arith_plane(l, p->data[2], avctx->width / 2,
|
||||
avctx->height / 2, p->linesize[2],
|
||||
lag_decode_arith_plane(l, p->data[2], (avctx->width + 1) / 2,
|
||||
(avctx->height + 1) / 2, p->linesize[2],
|
||||
buf + offset_gu, buf_size - offset_gu);
|
||||
lag_decode_arith_plane(l, p->data[1], avctx->width / 2,
|
||||
avctx->height / 2, p->linesize[1],
|
||||
lag_decode_arith_plane(l, p->data[1], (avctx->width + 1) / 2,
|
||||
(avctx->height + 1) / 2, p->linesize[1],
|
||||
buf + offset_bv, buf_size - offset_bv);
|
||||
break;
|
||||
default:
|
||||
|
|
Loading…
Reference in New Issue