Skip to content
Snippets Groups Projects
Commit aab60439 authored by Lionel Landwerlin's avatar Lionel Landwerlin Committed by Dylan Baker
Browse files

mesa: check draw buffer completeness on glClearBufferfi/glClearBufferiv


Signed-off-by: default avatarLionel Landwerlin <lionel.g.landwerlin@intel.com>
Cc: <mesa-stable@lists.freedesktop.org>
Reviewed-by: default avatarMarek Olšák <marek.olsak@amd.com>
(cherry picked from commit 88d66583)
parent 5fbc1877
No related branches found
No related tags found
No related merge requests found
...@@ -350,6 +350,12 @@ clear_bufferiv(struct gl_context *ctx, GLenum buffer, GLint drawbuffer, ...@@ -350,6 +350,12 @@ clear_bufferiv(struct gl_context *ctx, GLenum buffer, GLint drawbuffer,
_mesa_update_state( ctx ); _mesa_update_state( ctx );
} }
if (!no_error && ctx->DrawBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT) {
_mesa_error(ctx, GL_INVALID_FRAMEBUFFER_OPERATION_EXT,
"glClearBufferiv(incomplete framebuffer)");
return;
}
switch (buffer) { switch (buffer) {
case GL_STENCIL: case GL_STENCIL:
/* Page 264 (page 280 of the PDF) of the OpenGL 3.0 spec says: /* Page 264 (page 280 of the PDF) of the OpenGL 3.0 spec says:
...@@ -686,6 +692,12 @@ clear_bufferfi(struct gl_context *ctx, GLenum buffer, GLint drawbuffer, ...@@ -686,6 +692,12 @@ clear_bufferfi(struct gl_context *ctx, GLenum buffer, GLint drawbuffer,
drawbuffer); drawbuffer);
return; return;
} }
if (ctx->DrawBuffer->_Status != GL_FRAMEBUFFER_COMPLETE_EXT) {
_mesa_error(ctx, GL_INVALID_FRAMEBUFFER_OPERATION_EXT,
"glClearBufferfi(incomplete framebuffer)");
return;
}
} }
if (ctx->RasterDiscard) if (ctx->RasterDiscard)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment