From: Zhao Yakui <yakui.z...@intel.com>

When one surface is created, the height/width is aligned to 16 pixels.
But when trying to allocate the buffer object for it, the width is aligned
to 128 and height is aligned to 32. If the surface is mapped and accessed
before allocating the buffer object, the incorrect dimension is returned and
and the incorrect content is written.

From: Zhao Yakui <yakui.z...@intel.com>
---
 src/i965_drv_video.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/i965_drv_video.c b/src/i965_drv_video.c
index 588961f..8956367 100644
--- a/src/i965_drv_video.c
+++ b/src/i965_drv_video.c
@@ -506,8 +506,8 @@ i965_CreateSurfaces(VADriverContextP ctx,
         obj_surface->orig_width = width;
         obj_surface->orig_height = height;
 
-        obj_surface->width = ALIGN(width, 16);
-        obj_surface->height = ALIGN(height, 16);
+        obj_surface->width = ALIGN(width, 128);
+        obj_surface->height = ALIGN(height, 32);
         obj_surface->flags = SURFACE_REFERENCED;
         obj_surface->fourcc = 0;
         obj_surface->bo = NULL;
-- 
1.7.12-rc1

_______________________________________________
Libva mailing list
Libva@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libva

Reply via email to