diff options
Diffstat (limited to 'src/mesa/vbo/vbo_rebase.c')
-rw-r--r-- | src/mesa/vbo/vbo_rebase.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/mesa/vbo/vbo_rebase.c b/src/mesa/vbo/vbo_rebase.c index 597a8f46994..9a98ef7d449 100644 --- a/src/mesa/vbo/vbo_rebase.c +++ b/src/mesa/vbo/vbo_rebase.c @@ -129,6 +129,7 @@ void vbo_rebase_prims( struct gl_context *ctx, struct _mesa_index_buffer tmp_ib; struct _mesa_prim *tmp_prims = NULL; + const struct gl_client_array **saved_arrays = ctx->Array._DrawArrays; void *tmp_indices = NULL; GLuint i; @@ -226,15 +227,18 @@ void vbo_rebase_prims( struct gl_context *ctx, /* Re-issue the draw call. */ + ctx->Array._DrawArrays = tmp_array_pointers; + draw( ctx, - tmp_array_pointers, - prim, + prim, nr_prims, ib, GL_TRUE, 0, max_index - min_index, NULL ); + + ctx->Array._DrawArrays = saved_arrays; if (tmp_indices) free(tmp_indices); |