From: Ronald S. Bultje Date: Sat, 26 Jan 2013 00:08:19 +0000 (-0800) Subject: Fix block pointer corruption in intra8x8 prediction with 4x4 transform. X-Git-Tag: v1.3.0~1151^2~226^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=ffc2e4f4af34a202dd2a8fd47ebe1af5893e5e0c;p=libvpx Fix block pointer corruption in intra8x8 prediction with 4x4 transform. The RD loop would change the pointer after the first mode (DC) was tested, leading to corrupt block objects being provided for the others. This would essentially render the i8x8 predictor useless. Change-Id: I16c5906ca64fb34878ac32ce59af8974e4582bb8 --- diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index 6f7034405..2597d4b7f 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -1476,6 +1476,8 @@ static int64_t rd_pick_intra8x8block(VP9_COMP *cpi, MACROBLOCK *x, int ib, &ta0, &tl0, TX_4X4); } + b = &xd->block[ib]; + be = &x->block[ib]; rate += rate_t; }