]> granicus.if.org Git - libvpx/commitdiff
Moved has_rows, has_cols in vp9_decodeframe.c
authorScott LaVarnway <slavarnway@google.com>
Tue, 16 Jun 2015 18:50:54 +0000 (11:50 -0700)
committerScott LaVarnway <slavarnway@google.com>
Tue, 16 Jun 2015 18:50:54 +0000 (11:50 -0700)
from read_partition() to decode_partition().

Change-Id: I6bee2a0e9ff315290a690c9d773c9648dd2a200d

vp9/decoder/vp9_decodeframe.c

index 76bc23b1dc86399eb2dc8767c96547d2510d3733..9311d8dad7d13e6738eaa46f2cb6bace2f4d45a7 100644 (file)
@@ -771,14 +771,11 @@ static void decode_block(VP9Decoder *const pbi, MACROBLOCKD *const xd,
   xd->corrupted |= vp9_reader_has_error(r);
 }
 
-static PARTITION_TYPE read_partition(VP9_COMMON *cm, MACROBLOCKD *xd,
-                                     int hbs,
-                                     int mi_row, int mi_col, BLOCK_SIZE bsize,
-                                     vp9_reader *r) {
+static PARTITION_TYPE read_partition(MACROBLOCKD *xd, int mi_row, int mi_col,
+                                     BLOCK_SIZE bsize, vp9_reader *r,
+                                     int has_rows, int has_cols) {
   const int ctx = partition_plane_context(xd, mi_row, mi_col, bsize);
   const vp9_prob *const probs = get_partition_probs(xd, ctx);
-  const int has_rows = (mi_row + hbs) < cm->mi_rows;
-  const int has_cols = (mi_col + hbs) < cm->mi_cols;
   FRAME_COUNTS *counts = xd->counts;
   PARTITION_TYPE p;
 
@@ -805,11 +802,13 @@ static void decode_partition(VP9Decoder *const pbi, MACROBLOCKD *const xd,
   const int hbs = num_8x8_blocks_wide_lookup[bsize] / 2;
   PARTITION_TYPE partition;
   BLOCK_SIZE subsize;
+  const int has_rows = (mi_row + hbs) < cm->mi_rows;
+  const int has_cols = (mi_col + hbs) < cm->mi_cols;
 
   if (mi_row >= cm->mi_rows || mi_col >= cm->mi_cols)
     return;
 
-  partition = read_partition(cm, xd, hbs, mi_row, mi_col, bsize, r);
+  partition = read_partition(xd, mi_row, mi_col, bsize, r, has_rows, has_cols);
   subsize = get_subsize(bsize, partition);
   if (bsize == BLOCK_8X8) {
     decode_block(pbi, xd, tile, mi_row, mi_col, r, subsize);
@@ -820,12 +819,12 @@ static void decode_partition(VP9Decoder *const pbi, MACROBLOCKD *const xd,
         break;
       case PARTITION_HORZ:
         decode_block(pbi, xd, tile, mi_row, mi_col, r, subsize);
-        if (mi_row + hbs < cm->mi_rows)
+        if (has_rows)
           decode_block(pbi, xd, tile, mi_row + hbs, mi_col, r, subsize);
         break;
       case PARTITION_VERT:
         decode_block(pbi, xd, tile, mi_row, mi_col, r, subsize);
-        if (mi_col + hbs < cm->mi_cols)
+        if (has_cols)
           decode_block(pbi, xd, tile, mi_row, mi_col + hbs, r, subsize);
         break;
       case PARTITION_SPLIT: