Mesa (8.0): mesa: Check for a negative "size" parameter in glCopyBufferSubData().
Kenneth Graunke
kwg at kemper.freedesktop.org
Mon Jun 11 20:38:27 UTC 2012
Module: Mesa
Branch: 8.0
Commit: cb70af5c9404138d292d8490e35f61504358de40
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=cb70af5c9404138d292d8490e35f61504358de40
Author: Kenneth Graunke <kenneth at whitecape.org>
Date: Fri Jun 8 22:12:23 2012 -0700
mesa: Check for a negative "size" parameter in glCopyBufferSubData().
>From the GL_ARB_copy_buffer spec:
"An INVALID_VALUE error is generated if any of readoffset, writeoffset,
or size are negative [...]"
Fixes oglconform's copybuffer/negative.CNNegativeValues test.
NOTE: This is a candidate for stable release branches.
Signed-off-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Brian Paul <brianp at vmware.com>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
(cherry picked from commit a75e704326986b85539b6abf2319701e1a3138e9)
---
src/mesa/main/bufferobj.c | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/src/mesa/main/bufferobj.c b/src/mesa/main/bufferobj.c
index de4820b..41eb7c9 100644
--- a/src/mesa/main/bufferobj.c
+++ b/src/mesa/main/bufferobj.c
@@ -1311,6 +1311,12 @@ _mesa_CopyBufferSubData(GLenum readTarget, GLenum writeTarget,
return;
}
+ if (size < 0) {
+ _mesa_error(ctx, GL_INVALID_VALUE,
+ "glCopyBufferSubData(writeOffset = %d)", (int) size);
+ return;
+ }
+
if (readOffset + size > src->Size) {
_mesa_error(ctx, GL_INVALID_VALUE,
"glCopyBuffserSubData(readOffset + size = %d)",
More information about the mesa-commit
mailing list