From ba6f4c9ee2294de66977d292972d47355fa58be0 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Mon, 2 Jan 2012 14:03:59 -0800 Subject: [PATCH] i965/gen7: Fix segfault in transform feedback to DYNAMIC_DRAW buffers. Fixes piglit EXT_transform_feedback/buffer-usage. --- src/mesa/drivers/dri/i965/gen7_sol_state.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/i965/gen7_sol_state.c b/src/mesa/drivers/dri/i965/gen7_sol_state.c index 04783ec3132..110c1662b3d 100644 --- a/src/mesa/drivers/dri/i965/gen7_sol_state.c +++ b/src/mesa/drivers/dri/i965/gen7_sol_state.c @@ -53,7 +53,8 @@ upload_3dstate_so_buffers(struct brw_context *brw) * gl_transform_feedback_object. */ for (i = 0; i < 4; i++) { - struct gl_buffer_object *bufferobj = xfb_obj->Buffers[i]; + struct intel_buffer_object *bufferobj = + intel_buffer_object(xfb_obj->Buffers[i]); drm_intel_bo *bo; uint32_t start, end; uint32_t stride; @@ -72,7 +73,7 @@ upload_3dstate_so_buffers(struct brw_context *brw) continue; } - bo = intel_buffer_object(bufferobj)->buffer; + bo = intel_bufferobj_buffer(intel, bufferobj, INTEL_WRITE_PART); stride = linked_xfb_info->BufferStride[i] * 4; start = xfb_obj->Offset[i]; -- 2.30.2