mips dsp-ase r2 vp9 decoder fixed bug in extend frame module (seg fault) Change-Id: Ic46da8897d2fb5351e22d6d74805fd9d78c81b32
diff --git a/vpx_scale/mips/dspr2/yv12extend_dspr2.c b/vpx_scale/mips/dspr2/yv12extend_dspr2.c index 2c5cd1a..26558b0 100644 --- a/vpx_scale/mips/dspr2/yv12extend_dspr2.c +++ b/vpx_scale/mips/dspr2/yv12extend_dspr2.c
@@ -107,14 +107,13 @@ static void extend_frame(YV12_BUFFER_CONFIG *const ybf, int subsampling_x, int subsampling_y, int ext_size) { - const int c_w = (ybf->y_crop_width + subsampling_x) >> subsampling_x; - const int c_h = (ybf->y_crop_height + subsampling_y) >> subsampling_y; - const int c_et = ext_size >> subsampling_y; - const int c_el = ext_size >> subsampling_x; - const int c_eb = (ext_size + ybf->y_height - ybf->y_crop_height + - subsampling_y) >> subsampling_y; - const int c_er = (ext_size + ybf->y_width - ybf->y_crop_width + - subsampling_x) >> subsampling_x; + const int c_w = ybf->uv_crop_width; + const int c_h = ybf->uv_crop_height; + const int c_ext_size = ext_size >> 1; + const int c_et = c_ext_size; + const int c_el = c_ext_size; + const int c_eb = c_ext_size + ybf->uv_height - ybf->uv_crop_height; + const int c_er = c_ext_size + ybf->uv_width - ybf->uv_crop_width; assert(ybf->y_height - ybf->y_crop_height < 16); assert(ybf->y_width - ybf->y_crop_width < 16);