shithub: libvpx

Download patch

ref: ecf023f6e483706a4bf352b1dfcd9fb996ca4555
parent: a91e5b4fdc4e81352fa3a65c7fc795527eee6b07
parent: 5e5470b2546478ceec5b7e70ac099b847c399f2b
author: Jim Bankoski <jimbankoski@google.com>
date: Thu May 30 04:04:49 EDT 2013

Merge "fix valgrind warning" into experimental

--- a/vp9/encoder/vp9_rdopt.c
+++ b/vp9/encoder/vp9_rdopt.c
@@ -2550,11 +2550,6 @@
     this_mode = vp9_mode_order[mode_index].mode;
     ref_frame = vp9_mode_order[mode_index].ref_frame;
 
-    if (!(ref_frame == INTRA_FRAME
-        || (cpi->ref_frame_flags & flag_list[ref_frame]))) {
-      continue;
-    }
-
     if (cpi->speed > 0 && bsize >= BLOCK_SIZE_SB8X8) {
       if (!(ref_frame_mask & (1 << ref_frame))) {
         continue;
@@ -2571,6 +2566,15 @@
 
     mbmi->ref_frame = ref_frame;
     mbmi->second_ref_frame = vp9_mode_order[mode_index].second_ref_frame;
+
+    if (!(ref_frame == INTRA_FRAME
+        || (cpi->ref_frame_flags & flag_list[ref_frame]))) {
+      continue;
+    }
+    if (!(mbmi->second_ref_frame == NONE
+        || (cpi->ref_frame_flags & flag_list[mbmi->second_ref_frame]))) {
+      continue;
+    }
 
     // TODO(jingning, jkoleszar): scaling reference frame not supported for
     // SPLITMV.
--