mesa/main: do not allow EXT_texture_sRGB_R8 enums before gles3

ctx->Extensions.EXT_texture_sRGB_R8 is set regardless of the API
that's used, so checking for those direcly will always allow the
enums from this extensions when they are supported by the driver.

There's no extension adding support for this on OpenGL ES before
version 3.0, so let's tighten the check.

Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-By: Gert Wollny <gert.wollny@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
This commit is contained in:
Erik Faye-Lund 2018-11-16 11:30:34 +01:00
parent d972939986
commit c4136ed5cc

View file

@ -2473,7 +2473,7 @@ _mesa_base_tex_format(const struct gl_context *ctx, GLint internalFormat)
}
}
if (ctx->Extensions.EXT_texture_sRGB_R8) {
if (_mesa_has_EXT_texture_sRGB_R8(ctx)) {
switch (internalFormat) {
case GL_SR8_EXT:
return GL_RED;
@ -3212,7 +3212,7 @@ _mesa_gles_error_check_format_and_type(const struct gl_context *ctx,
case GL_UNSIGNED_BYTE:
if (internalFormat == GL_R8 ||
((internalFormat == GL_SR8_EXT) &&
ctx->Extensions.EXT_texture_sRGB_R8))
_mesa_has_EXT_texture_sRGB_R8(ctx)))
break;
return GL_INVALID_OPERATION;