i915: Fix gen2 texblend setup
authorVille Syrjälä <ville.syrjala@linux.intel.com>
Mon, 16 Jun 2014 17:54:32 +0000 (20:54 +0300)
committerVille Syrjälä <ville.syrjala@linux.intel.com>
Mon, 23 Jun 2014 09:42:00 +0000 (12:42 +0300)
Fix an off by one in the texture unit walk during texblend
setup on gen2. This caused the last enabled texunit to be
skipped resulting in totally messed up texturing.

This is a regression introduced here:
 commit 1ad443ecdd694dd9bf3c4a5050d749fb80db6fa2
 Author: Eric Anholt <eric@anholt.net>
 Date:   Wed Apr 23 15:35:27 2014 -0700

    i915: Redo texture unit walking on i830.

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Cc: "10.2" <mesa-stable@lists.freedesktop.org>
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
src/mesa/drivers/dri/i915/i830_texblend.c

index 6e991c4..236be59 100644 (file)
@@ -445,7 +445,7 @@ i830EmitTextureBlend(struct i830_context *i830)
    I830_ACTIVESTATE(i830, I830_UPLOAD_TEXBLEND_ALL, false);
 
    if (ctx->Texture._MaxEnabledTexImageUnit != -1) {
-      for (unit = 0; unit < ctx->Texture._MaxEnabledTexImageUnit; unit++)
+      for (unit = 0; unit <= ctx->Texture._MaxEnabledTexImageUnit; unit++)
          if (ctx->Texture.Unit[unit]._Current)
             emit_texblend(i830, unit, blendunit++,
                           unit == ctx->Texture._MaxEnabledTexImageUnit);