Fix a bug in intra4x4 level rd loop
authorJingning Han <jingning@google.com>
Thu, 23 May 2013 22:12:54 +0000 (15:12 -0700)
committerJingning Han <jingning@google.com>
Fri, 24 May 2013 00:44:33 +0000 (17:44 -0700)
This commit fixed a uninitialized value use in the intra 4x4/8x4/4x8
rate-distortion loop.

Change-Id: I5c25b3536b59e4f5fbb23cf85baf93b2ccec7d72

vp9/encoder/vp9_rdopt.c

index 1ca323e..15ed831 100644 (file)
@@ -633,9 +633,8 @@ static int64_t rd_pick_intra4x4block(VP9_COMP *cpi, MACROBLOCK *x, int ib,
         dst = raster_block_offset_uint8(xd, BLOCK_SIZE_SB8X8, 0, block,
                                         xd->plane[0].dst.buf,
                                         xd->plane[0].dst.stride);
-        vp9_intra4x4_predict(xd, block,
-                             BLOCK_SIZE_SB8X8,
-                             mode, dst, xd->plane[0].dst.stride);
+        vp9_intra4x4_predict(xd, block, BLOCK_SIZE_SB8X8, mode,
+                             dst, xd->plane[0].dst.stride);
         vp9_subtract_block(4, 4, src_diff, 8,
                            src, src_stride,
                            dst, xd->plane[0].dst.stride);
@@ -654,7 +653,7 @@ static int64_t rd_pick_intra4x4block(VP9_COMP *cpi, MACROBLOCK *x, int ib,
         distortion += vp9_block_error(coeff, BLOCK_OFFSET(xd->plane[0].dqcoeff,
                                                          block, 16), 16) >> 2;
 
-        vp9_intra4x4_predict(xd, block, BLOCK_SIZE_SB8X8, *best_mode,
+        vp9_intra4x4_predict(xd, block, BLOCK_SIZE_SB8X8, mode,
                              dst, xd->plane[0].dst.stride);
 
         if (best_tx_type != DCT_DCT)