avcodec/huffyuvdec: apply vertical filter in steps of 1 line for interlaced BGRA

Fixes out of array read
Fixes: signal_sigsegv_3287332_2301_cov_2994954934_huffyuv.avi
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2014-11-25 17:34:03 +01:00
parent d0879a93ea
commit 2f1de5ca13
1 changed files with 2 additions and 3 deletions

View File

@ -1202,11 +1202,10 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame,
if (s->predictor == PLANE) {
if (s->bitstream_bpp != 32)
left[A] = 0;
if ((y & s->interlaced) == 0 &&
y < s->height - 1 - s->interlaced) {
if (y < s->height - 1 - s->interlaced) {
s->hdsp.add_bytes(p->data[0] + p->linesize[0] * y,
p->data[0] + p->linesize[0] * y +
fake_ystride, fake_ystride);
fake_ystride, 4 * width);
}
}
}