bug fix vpx_copy_and_extend_frame size issue
authorJames Berry <jamesberry@google.com>
Thu, 14 Jul 2011 19:53:50 +0000 (15:53 -0400)
committerJames Berry <jamesberry@google.com>
Thu, 14 Jul 2011 19:58:15 +0000 (15:58 -0400)
vpx_copy_and_extend_frame could incorrectly
resize uv frames which could result in a crash.

Change-Id: Ie96f7078b1e328b3907a06eebeee44ca39a2e898

vp8/common/extend.c

index 036bafc..a2d3253 100644 (file)
@@ -85,10 +85,10 @@ void vp8_copy_and_extend_frame(YV12_BUFFER_CONFIG *src,
                           src->y_height, src->y_width,
                           et, el, eb, er);
 
-    et = (et + 1) >> 1;
-    el = (el + 1) >> 1;
-    eb = (eb + 1) >> 1;
-    er = (er + 1) >> 1;
+    et = dst->border >> 1;
+    el = dst->border >> 1;
+    eb = (dst->border >> 1) + dst->uv_height - src->uv_height;
+    er = (dst->border >> 1) + dst->uv_width - src->uv_width;
 
     copy_and_extend_plane(src->u_buffer, src->uv_stride,
                           dst->u_buffer, dst->uv_stride,