[Mesa-dev] [PATCH 13/18] i965: Fix intel_bufferobj_buffer range for blit drawpixels.

Eric Anholt eric at anholt.net
Tue Apr 29 16:34:38 PDT 2014


If the stride wasn't width*cpp, we wouldn't track how much of the src is
busy, and allow a subdata into the end to proceed unsynchronized.
---
 src/mesa/drivers/dri/i965/intel_pixel_draw.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/intel_pixel_draw.c b/src/mesa/drivers/dri/i965/intel_pixel_draw.c
index 96bbd3d..b46bf26 100644
--- a/src/mesa/drivers/dri/i965/intel_pixel_draw.c
+++ b/src/mesa/drivers/dri/i965/intel_pixel_draw.c
@@ -103,9 +103,8 @@ do_blit_drawpixels(struct gl_context * ctx,
    src_offset += _mesa_image_offset(2, unpack, width, height,
 				    format, type, 0, 0, 0);
 
-   src_buffer = intel_bufferobj_buffer(brw, src,
-				       src_offset, width * height *
-                                       irb->mt->cpp);
+   src_buffer = intel_bufferobj_buffer(brw, src, src_offset,
+                                       height * src_stride);
 
    struct intel_mipmap_tree *pbo_mt =
       intel_miptree_create_for_bo(brw,
-- 
1.9.2



More information about the mesa-dev mailing list