From cbecb8fc8e85cfafed7fd8fd0e2dd1143efcf62b Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Tue, 26 Jan 2010 12:49:44 -0700 Subject: vbo: if 'end' is out of bounds, clamp it If we determine that the 'end' parameter to glDrawElements() is out of bounds, clamp it to the max legal index value. --- src/mesa/vbo/vbo_exec_array.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c index f455382592..bd2fccdba1 100644 --- a/src/mesa/vbo/vbo_exec_array.c +++ b/src/mesa/vbo/vbo_exec_array.c @@ -748,6 +748,10 @@ vbo_exec_DrawRangeElementsBaseVertex(GLenum mode, */ } #endif + + /* Set 'end' to the max possible legal value */ + assert(ctx->Array.ArrayObj->_MaxElement >= 1); + end = ctx->Array.ArrayObj->_MaxElement - 1; } else if (0) { _mesa_printf("glDraw[Range]Elements{,BaseVertex}" -- cgit v1.2.3