radeon: move YUV on first texunit check after hw state is setup
authorDave Airlie <airlied@redhat.com>
Tue, 17 Feb 2009 00:26:33 +0000 (10:26 +1000)
committerDave Airlie <airlied@redhat.com>
Tue, 17 Feb 2009 00:26:33 +0000 (10:26 +1000)
src/mesa/drivers/dri/radeon/radeon_texstate.c

index 1aa5f980ce2c9b4690e06105d0f9240bd300bd42..0dc355723ecfc6970acb76fc3391c6b4ae2731d0 100644 (file)
@@ -985,15 +985,14 @@ static GLboolean radeon_validate_texture(GLcontext *ctx, struct gl_texture_objec
    if (!radeon_validate_texture_miptree(ctx, texObj))
       return GL_FALSE;
 
-   /* yuv conversion only works in first unit */
-   if (unit != 0 && (t->pp_txfilter & RADEON_YUV_TO_RGB))
-      return GL_FALSE;
-
-
    ret = setup_hardware_state(rmesa, t, unit);
    if (ret == GL_FALSE)
      return GL_FALSE;
 
+   /* yuv conversion only works in first unit */
+   if (unit != 0 && (t->pp_txfilter & RADEON_YUV_TO_RGB))
+      return GL_FALSE;
+
    RADEON_STATECHANGE( rmesa, ctx );
    rmesa->hw.ctx.cmd[CTX_PP_CNTL] |= 
      (RADEON_TEX_0_ENABLE | RADEON_TEX_BLEND_0_ENABLE) << unit;