From fdabc7d9f6db82d0c8dbca09c30cf25be29b30d8 Mon Sep 17 00:00:00 2001 From: Kenneth Graunke Date: Fri, 14 Sep 2012 02:39:52 -0700 Subject: [PATCH] meta: Don't _mesa_set_enable() invalid targets in ES 1. GL_TEXTURE_1D, GL_TEXTURE_3D, GL_TEXTURE_RECTANGLE, and GL_TEXTURE_GEN_S/T/R/Q don't exist in ES 1 contexts, so any meta ops that used _mesa_meta_begin with MESA_META_TEXTURE would trigger GL errors. One such operation is _mesa_meta_Clear(). On ES 1, we want to disable GL_TEXTURE_GEN_STR_OES instead. Fixes the ES1 conformance test miplin.c, which was regressed by commit 08be1d288f216232d3974f5997b266a8dd720928. NOTE: This is a candidate for the 9.0 branch. v2: Also blacklist GL_TEXTURE_3D, per Brian's comment. v3: Disable GL_TEXTURE_GEN_STR_OES, per Ian's comment. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=54297 Reviewed-by: Brian Paul [v1] Signed-off-by: Kenneth Graunke (cherry picked from commit 679c93ff89c71cbd3b1d24e88abd38f00b8c1f02) --- src/mesa/drivers/common/meta.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c index 582d59dbb37..7239d071be3 100644 --- a/src/mesa/drivers/common/meta.c +++ b/src/mesa/drivers/common/meta.c @@ -663,6 +663,8 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state) _mesa_set_enable(ctx, GL_TEXTURE_GEN_T, GL_FALSE); _mesa_set_enable(ctx, GL_TEXTURE_GEN_R, GL_FALSE); _mesa_set_enable(ctx, GL_TEXTURE_GEN_Q, GL_FALSE); + } else { + _mesa_set_enable(ctx, GL_TEXTURE_GEN_STR_OES, GL_FALSE); } } }