summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorOve Kaaven <ovek@arcticnet.no>2008-04-29 22:14:05 +0200
committerRoland Scheidegger <sroland@tungstengraphics.com>2008-04-29 22:14:05 +0200
commit4f474c7d1e1e6807af0f3db55f641fbd66be2e90 (patch)
tree3e73d8e7c5d3c4191f90ca7d2102ad4cee96f410 /src
parentacba9c1771d653126fd6f604cb80c050b9e8ffb3 (diff)
r200: fix state submission issue causing bogus textures (bug 15730)
Diffstat (limited to 'src')
-rw-r--r--src/mesa/drivers/dri/r200/r200_texstate.c6
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++) {