From: Kenneth Graunke Date: Thu, 25 Jul 2013 21:47:58 +0000 (-0700) Subject: mesa: Remove broken assertion about enabled texture targets. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=07cdf426c108eca93ac8ff3c682e2c800a5f5d20;p=mesa.git mesa: Remove broken assertion about enabled texture targets. For GLSL programs, enabledTargets can have more than one bit set. For example, a shader that uses sampler2D and samplerCube uniforms will have both TEXTURE_2D_BIT and TEXTURE_CUBE_BIT set. The code that sets _ReallyEnabled already handles this, selecting the "highest priority" texture target. We should simply use that. Fixes new Piglit test incomplete-textures-of-multiple-types. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=62698 Signed-off-by: Kenneth Graunke Reviewed-by: Brian Paul --- diff --git a/src/mesa/main/texstate.c b/src/mesa/main/texstate.c index 741985c4638..afff0135952 100644 --- a/src/mesa/main/texstate.c +++ b/src/mesa/main/texstate.c @@ -594,8 +594,8 @@ update_texture_state( struct gl_context *ctx ) /* Look for the highest priority texture target that's enabled (or used * by the vert/frag shaders) and "complete". That's the one we'll use - * for texturing. If we're using vert/frag program we're guaranteed - * that bitcount(enabledBits) <= 1. + * for texturing. + * * Note that the TEXTURE_x_INDEX values are in high to low priority. */ for (texIndex = 0; texIndex < NUM_TEXTURE_TARGETS; texIndex++) { @@ -624,8 +624,6 @@ update_texture_state( struct gl_context *ctx ) struct gl_texture_object *texObj; gl_texture_index texTarget; - assert(_mesa_bitcount(enabledTargets) == 1); - texTarget = (gl_texture_index) (ffs(enabledTargets) - 1); texObj = _mesa_get_fallback_texture(ctx, texTarget);