summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/mesa/main/texstate.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/mesa/main/texstate.c b/src/mesa/main/texstate.c
index f9f50a30054..9b64b64ae58 100644
--- a/src/mesa/main/texstate.c
+++ b/src/mesa/main/texstate.c
@@ -310,6 +310,19 @@ active_texture(GLenum texture, bool no_error)
}
}
+
+ /* The below flush call seems useless because
+ * gl_context::Texture::CurrentUnit is not used by
+ * _mesa_update_texture_state() and friends.
+ *
+ * However removing the flush
+ * introduced some blinking textures in UT2004. More investigation is
+ * needed to find the root cause.
+ *
+ * https://bugs.freedesktop.org/show_bug.cgi?id=105436
+ */
+ FLUSH_VERTICES(ctx, _NEW_TEXTURE_STATE);
+
ctx->Texture.CurrentUnit = texUnit;
if (ctx->Transform.MatrixMode == GL_TEXTURE) {
/* update current stack pointer */