From 3953766e57f96be754229bb109ba5dfdcdbc8b50 Mon Sep 17 00:00:00 2001 From: Chris Forbes Date: Sun, 13 Oct 2013 20:56:42 +1300 Subject: mesa: pass indirect buffer to sw primitive restart Reviewed-by: Kenneth Graunke Reviewed-by: Eric Anholt --- src/mesa/drivers/dri/i965/brw_primitive_restart.c | 2 +- src/mesa/vbo/vbo.h | 3 ++- src/mesa/vbo/vbo_exec_array.c | 2 +- src/mesa/vbo/vbo_primitive_restart.c | 3 ++- 4 files changed, 6 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/mesa/drivers/dri/i965/brw_primitive_restart.c b/src/mesa/drivers/dri/i965/brw_primitive_restart.c index 3748e74f782..f014b60bab6 100644 --- a/src/mesa/drivers/dri/i965/brw_primitive_restart.c +++ b/src/mesa/drivers/dri/i965/brw_primitive_restart.c @@ -176,7 +176,7 @@ brw_handle_primitive_restart(struct gl_context *ctx, /* Not all the primitive draw modes are supported by the cut index, * so take the software path */ - vbo_sw_primitive_restart(ctx, prims, nr_prims, ib); + vbo_sw_primitive_restart(ctx, prims, nr_prims, ib, indirect); } brw->prim_restart.in_progress = false; diff --git a/src/mesa/vbo/vbo.h b/src/mesa/vbo/vbo.h index f58fa0b3399..6e1a4aa1ad6 100644 --- a/src/mesa/vbo/vbo.h +++ b/src/mesa/vbo/vbo.h @@ -186,7 +186,8 @@ void vbo_sw_primitive_restart(struct gl_context *ctx, const struct _mesa_prim *prim, GLuint nr_prims, - const struct _mesa_index_buffer *ib); + const struct _mesa_index_buffer *ib, + struct gl_buffer_object *indirect); void GLAPIENTRY _es_Color4f(GLfloat r, GLfloat g, GLfloat b, GLfloat a); diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c index db7da6922ea..8152fa1623e 100644 --- a/src/mesa/vbo/vbo_exec_array.c +++ b/src/mesa/vbo/vbo_exec_array.c @@ -579,7 +579,7 @@ vbo_handle_primitive_restart(struct gl_context *ctx, ctx->Const.PrimitiveRestartInSoftware && ctx->Array._PrimitiveRestart) { /* Handle primitive restart in software */ - vbo_sw_primitive_restart(ctx, prim, nr_prims, ib); + vbo_sw_primitive_restart(ctx, prim, nr_prims, ib, NULL); } else { /* Call driver directly for draw_prims */ vbo->draw_prims(ctx, prim, nr_prims, ib, diff --git a/src/mesa/vbo/vbo_primitive_restart.c b/src/mesa/vbo/vbo_primitive_restart.c index e5c93ac6dfc..75e760fc9de 100644 --- a/src/mesa/vbo/vbo_primitive_restart.c +++ b/src/mesa/vbo/vbo_primitive_restart.c @@ -163,7 +163,8 @@ void vbo_sw_primitive_restart(struct gl_context *ctx, const struct _mesa_prim *prims, GLuint nr_prims, - const struct _mesa_index_buffer *ib) + const struct _mesa_index_buffer *ib, + struct gl_buffer_object *indirect) { GLuint prim_num; struct sub_primitive *sub_prims; -- cgit v1.2.3