mesa: Add ARB_direct_state_access checks in renderbuffer functions

Signed-off-by: Fredrik Höglund <fredrik@kde.org>
Reviewed-by: Adam Jackson <ajax@redhat.com>
This commit is contained in:
Fredrik Höglund 2015-05-10 20:49:15 +02:00
parent 6ad0b7e07a
commit cb49940766
1 changed files with 21 additions and 0 deletions

View File

@ -1489,6 +1489,14 @@ void GLAPIENTRY
_mesa_CreateRenderbuffers(GLsizei n, GLuint *renderbuffers)
{
GET_CURRENT_CONTEXT(ctx);
if (!ctx->Extensions.ARB_direct_state_access) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"glCreateRenderbuffers(GL_ARB_direct_state_access "
"is not supported)");
return;
}
create_render_buffers(ctx, n, renderbuffers, true);
}
@ -1929,6 +1937,12 @@ renderbuffer_storage_named(GLuint renderbuffer, GLenum internalFormat,
{
GET_CURRENT_CONTEXT(ctx);
if (!ctx->Extensions.ARB_direct_state_access) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"%s(GL_ARB_direct_state_access is not supported)", func);
return;
}
if (MESA_VERBOSE & VERBOSE_API) {
if (samples == NO_SAMPLES)
_mesa_debug(ctx, "%s(%u, %s, %d, %d)\n",
@ -2183,6 +2197,13 @@ _mesa_GetNamedRenderbufferParameteriv(GLuint renderbuffer, GLenum pname,
{
GET_CURRENT_CONTEXT(ctx);
if (!ctx->Extensions.ARB_direct_state_access) {
_mesa_error(ctx, GL_INVALID_OPERATION,
"glGetNamedRenderbufferParameteriv("
"GL_ARB_direct_state_access is not supported)");
return;
}
struct gl_renderbuffer *rb = _mesa_lookup_renderbuffer(ctx, renderbuffer);
if (!rb || rb == &DummyRenderbuffer) {
/* ID was reserved, but no real renderbuffer object made yet */