r300: fix swtcl texrect path properly.
authorDave Airlie <airlied@linux.ie>
Mon, 5 May 2008 13:49:50 +0000 (23:49 +1000)
committerDave Airlie <airlied@linux.ie>
Mon, 5 May 2008 13:50:45 +0000 (23:50 +1000)
We really need to update the shader state so the texrect parameters work.

This should fix compiz looking crappy on rs480 and rs690
(cherry picked from commit 66a5562ce2906fbf5b96d1cee18f9a31a78c4360)

src/mesa/drivers/dri/r300/r300_state.c
src/mesa/drivers/dri/r300/r300_swtcl.c

index ae5d8a80623236dc07da24c2bf03f3830b09f8b3..aa0de4e7838d0bd48642d13022c73b0abb43f4a1 100644 (file)
@@ -2129,10 +2129,11 @@ void r300UpdateShaders(r300ContextPtr rmesa)
                        hw_tcl_on = future_hw_tcl_on = 0;
                        r300ResetHwState(rmesa);
 
+                       r300UpdateStateParameters(ctx, _NEW_PROGRAM);
                        return;
                }
-               r300UpdateStateParameters(ctx, _NEW_PROGRAM);
        }
+       r300UpdateStateParameters(ctx, _NEW_PROGRAM);
 }
 
 static void r300SetupPixelShader(r300ContextPtr rmesa)
index a732bdb559801243eaa997e8e21118311ea5f834..1452ed5b060ad725d03a2d147b3276646ff19968 100644 (file)
@@ -591,6 +591,7 @@ static void r300RenderStart(GLcontext *ctx)
        r300ChooseRenderState(ctx);     
        r300SetVertexFormat(ctx);
 
+       r300UpdateShaders(rmesa);
        r300UpdateShaderStates(rmesa);
 
        r300EmitCacheFlush(rmesa);