mesa/main: do not allow etc2 enums on gles1
authorErik Faye-Lund <erik.faye-lund@collabora.com>
Thu, 15 Nov 2018 15:33:49 +0000 (16:33 +0100)
committerErik Faye-Lund <erik.faye-lund@collabora.com>
Mon, 3 Dec 2018 17:16:44 +0000 (18:16 +0100)
ctx->Extensions.ARB_ES3_compatibility is set regardless of the API
that's used, so checking for those direcly will always enable
extensions when they are supported by the driver.

But there's no extension enabling ETC2 for OpenGL ES 1.x, so we
shouldn't allow those enums there.

Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
src/mesa/main/glformats.c

index 0d782ce8bc7b0aadea1f372d81a0c654fb243e4d..b0711d3b9ecac9b50961202bc1b97ae80eca932e 100644 (file)
@@ -1385,7 +1385,7 @@ _mesa_is_compressed_format(const struct gl_context *ctx, GLenum format)
    case MESA_FORMAT_LAYOUT_ETC1:
       return _mesa_has_OES_compressed_ETC1_RGB8_texture(ctx);
    case MESA_FORMAT_LAYOUT_ETC2:
-      return _mesa_is_gles3(ctx) || ctx->Extensions.ARB_ES3_compatibility;
+      return _mesa_is_gles3(ctx) || _mesa_has_ARB_ES3_compatibility(ctx);
    case MESA_FORMAT_LAYOUT_BPTC:
       return _mesa_has_ARB_texture_compression_bptc(ctx);
    case MESA_FORMAT_LAYOUT_ASTC: