mesa: Add ARB_direct_state_access checks in texture functions
[mesa.git] / src / mesa / main / texobj.c
index c563f1e74343e21ce0b4bda3197a9f76794685c1..d51e6954ba09ca53590d1d19b2aaf581004ed2fe 100644 (file)
@@ -1317,6 +1317,13 @@ _mesa_CreateTextures(GLenum target, GLsizei n, GLuint *textures)
    GLint targetIndex;
    GET_CURRENT_CONTEXT(ctx);
 
+   if (!ctx->Extensions.ARB_direct_state_access) {
+      _mesa_error(ctx, GL_INVALID_OPERATION,
+                  "glCreateTextures(GL_ARB_direct_state_access "
+                  "is not supported)");
+      return;
+   }
+
    /*
     * The 4.5 core profile spec (30.10.2014) doesn't specify what
     * glCreateTextures should do with invalid targets, which was probably an
@@ -1808,6 +1815,13 @@ _mesa_BindTextureUnit(GLuint unit, GLuint texture)
       _mesa_debug(ctx, "glBindTextureUnit %s %d\n",
                   _mesa_lookup_enum_by_nr(GL_TEXTURE0+unit), (GLint) texture);
 
+   if (!ctx->Extensions.ARB_direct_state_access) {
+      _mesa_error(ctx, GL_INVALID_OPERATION,
+                  "glBindTextureUnit(GL_ARB_direct_state_access "
+                  "is not supported)");
+      return;
+   }
+
    /* Section 8.1 (Texture Objects) of the OpenGL 4.5 core profile spec
     * (20141030) says:
     *    "When texture is zero, each of the targets enumerated at the