diff options
author | Ove Kaaven <ovek@arcticnet.no> | 2008-04-29 22:14:05 +0200 |
---|---|---|
committer | Roland Scheidegger <sroland@tungstengraphics.com> | 2008-04-29 22:14:05 +0200 |
commit | 4f474c7d1e1e6807af0f3db55f641fbd66be2e90 (patch) | |
tree | 3e73d8e7c5d3c4191f90ca7d2102ad4cee96f410 /src/mesa/drivers | |
parent | acba9c1771d653126fd6f604cb80c050b9e8ffb3 (diff) |
r200: fix state submission issue causing bogus textures (bug 15730)
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r-- | src/mesa/drivers/dri/r200/r200_texstate.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/r200/r200_texstate.c b/src/mesa/drivers/dri/r200/r200_texstate.c index 05ff5952f3..4edf304438 100644 --- a/src/mesa/drivers/dri/r200/r200_texstate.c +++ b/src/mesa/drivers/dri/r200/r200_texstate.c @@ -1815,6 +1815,12 @@ void r200UpdateTextureState( GLcontext *ctx ) GLboolean ok; GLuint dbg; + /* NOTE: must not manipulate rmesa->state.texture.unit[].unitneeded or + rmesa->state.envneeded before a R200_STATECHANGE (or R200_NEWPRIM) since + we use these to determine if we want to emit the corresponding state + atoms. */ + R200_NEWPRIM( rmesa ); + if (ctx->ATIFragmentShader._Enabled) { GLuint i; for (i = 0; i < R200_MAX_TEXTURE_UNITS; i++) { |