make really sure R200_VAP_PROG_VTX_SHADER_ENABLE is never set when we're already...
authorRoland Scheidegger <rscheidegger@gmx.ch>
Thu, 7 Sep 2006 13:34:29 +0000 (13:34 +0000)
committerRoland Scheidegger <rscheidegger@gmx.ch>
Thu, 7 Sep 2006 13:34:29 +0000 (13:34 +0000)
src/mesa/drivers/dri/r200/r200_tcl.c
src/mesa/drivers/dri/r200/r200_vertprog.c

index 2530e1b..18b5458 100644 (file)
@@ -545,7 +545,6 @@ static void transition_to_swtnl( GLcontext *ctx )
     * need to put the card into D3D mode to make it work:
     */
    R200_STATECHANGE( rmesa, vap );
-   /* not sure if it's strictly necessary to disable VAP_PROG_VTX_SHADER_ENABLE in addition to VAP_TCL_ENABLE) */
    rmesa->hw.vap.cmd[VAP_SE_VAP_CNTL] &= ~(R200_VAP_TCL_ENABLE|R200_VAP_PROG_VTX_SHADER_ENABLE);
 }
 
index ab9a64c..1357d2e 100644 (file)
@@ -989,7 +989,7 @@ void r200SetupVertexProg( GLcontext *ctx ) {
    fallback = !(vp->native && r200VertexProgUpdateParams(ctx, vp) &&
       rmesa->r200Screen->drmSupportsVertexProgram);
    TCL_FALLBACK(ctx, R200_TCL_FALLBACK_VERTEX_PROGRAM, fallback);
-   if (fallback) return;
+   if (rmesa->TclFallback) return;
 
    R200_STATECHANGE( rmesa, vap );
    /* FIXME: fglrx sets R200_VAP_SINGLE_BUF_STATE_ENABLE too. Do we need it?