]> granicus.if.org Git - libvpx/commitdiff
mips dsp-ase r2 vp9 decoder fixed bug in extend frame module (seg fault)
authorParag Salasakar <img.mips1@gmail.com>
Mon, 13 Jan 2014 09:14:18 +0000 (14:44 +0530)
committerParag Salasakar <img.mips1@gmail.com>
Mon, 13 Jan 2014 09:14:18 +0000 (14:44 +0530)
Change-Id: Ic46da8897d2fb5351e22d6d74805fd9d78c81b32

vpx_scale/mips/dspr2/yv12extend_dspr2.c

index 2c5cd1a87e030ed5c86279d1c3f6b338a31de102..26558b0c521a37e77b8e72a9ee8ad3c1c6e7359f 100644 (file)
@@ -107,14 +107,13 @@ static void extend_plane(uint8_t *const src, int src_stride,
 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);