diff options
author | Brian Paul <brianp@vmware.com> | 2010-01-26 12:49:44 -0700 |
---|---|---|
committer | Brian Paul <brianp@vmware.com> | 2010-01-26 12:49:48 -0700 |
commit | cbecb8fc8e85cfafed7fd8fd0e2dd1143efcf62b (patch) | |
tree | bbbd69b7c998717d0e75ec11b8972258b11c2abf | |
parent | 645e297a0019eb2f7513bd801ffdaac03187f29f (diff) |
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.
-rw-r--r-- | src/mesa/vbo/vbo_exec_array.c | 4 |
1 files changed, 4 insertions, 0 deletions
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}" |