diff options
author | Paul Berry <[email protected]> | 2011-12-08 11:23:22 -0800 |
---|---|---|
committer | Paul Berry <[email protected]> | 2011-12-20 14:32:16 -0800 |
commit | 38b118d49ddbc8bd5d96cc0d23d681887fca045e (patch) | |
tree | 3cf12003ff9d9fb36b2c65234d8c59c017f3ad7c /src/mesa | |
parent | 942d452047431f7463d3fad5e7cb92dfd81fd0ac (diff) |
mesa: Fix off-by-one error in transform feedback size check.
In _mesa_BindBufferRange(), we need to verify that the offset and size
specified by the client do not exceed the size of the underlying
buffer. We were accidentally doing this check using ">=" rather than
">", so we were generating a bogus error if the client specified an
offset and size that fit exactly in the underlying buffer.
Reviewed-by: Brian Paul <[email protected]>
Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/main/transformfeedback.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/main/transformfeedback.c b/src/mesa/main/transformfeedback.c index 824f66a3528..b0b75eaf5c3 100644 --- a/src/mesa/main/transformfeedback.c +++ b/src/mesa/main/transformfeedback.c @@ -473,7 +473,7 @@ _mesa_BindBufferRange(GLenum target, GLuint index, return; } - if (offset + size >= bufObj->Size) { + if (offset + size > bufObj->Size) { _mesa_error(ctx, GL_INVALID_VALUE, "glBindBufferRange(offset + size %d > buffer size %d)", (int) (offset + size), (int) (bufObj->Size)); |