Reset the cyclic_refresh_mode_index to 0 on resize. On an internal spatial resize, this mode index was not reset to 0, and therefore could exceed dimensions of seg_map or cyclic_refresh_map. Change-Id: I6fe85dbd2765eb0207a9d9f71fda8d8b8c34f075
diff --git a/vp8/encoder/onyx_if.c b/vp8/encoder/onyx_if.c index 87092ef..1278b24 100644 --- a/vp8/encoder/onyx_if.c +++ b/vp8/encoder/onyx_if.c
@@ -467,6 +467,7 @@ /* Cycle through the macro_block rows */ /* MB loop to set local segmentation map */ i = cpi->cyclic_refresh_mode_index; + assert(i < mbs_in_frame); do { /* If the MB is as a candidate for clean up then mark it for @@ -3915,6 +3916,7 @@ Q = vp8_regulate_q(cpi, cpi->this_frame_target); if (cpi->cyclic_refresh_mode_enabled) { + cpi->cyclic_refresh_mode_index = 0; if (cpi->current_layer==0) cyclic_background_refresh(cpi, Q, 0); else