Mesa (staging/20.0): mesa: call FLUSH_VERTICES before updating CoordReplace

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Feb 28 22:44:47 UTC 2020


Module: Mesa
Branch: staging/20.0
Commit: bb589b48eb71f41a7f4a0cc4ed900dced9ea3f20
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=bb589b48eb71f41a7f4a0cc4ed900dced9ea3f20

Author: Marek Olšák <marek.olsak at amd.com>
Date:   Wed Feb 19 21:43:56 2020 -0500

mesa: call FLUSH_VERTICES before updating CoordReplace

Reviewed-by: Mathias Fröhlich <mathias.froehlich at web.de>
Cc: 20.0 <mesa-stable at lists.freedesktop.org>
Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3947>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3947>
(cherry picked from commit 4449611ffbb0087a6d2407fb0d25496806df157b)

---

 .pick_status.json      | 2 +-
 src/mesa/main/texenv.c | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/.pick_status.json b/.pick_status.json
index 0b7e62aa107..2ca187b936a 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -1120,7 +1120,7 @@
         "description": "mesa: call FLUSH_VERTICES before updating CoordReplace",
         "nominated": true,
         "nomination_type": 0,
-        "resolution": 0,
+        "resolution": 1,
         "master_sha": null,
         "because_sha": null
     },
diff --git a/src/mesa/main/texenv.c b/src/mesa/main/texenv.c
index c9fcce2faf3..5d0dc6cc4e9 100644
--- a/src/mesa/main/texenv.c
+++ b/src/mesa/main/texenv.c
@@ -491,16 +491,17 @@ _mesa_texenvfv_indexed( struct gl_context* ctx, GLuint texunit, GLenum target,
          if (iparam0 == GL_TRUE) {
             if (ctx->Point.CoordReplace & (1u << texunit))
                return;
+            FLUSH_VERTICES(ctx, _NEW_POINT);
             ctx->Point.CoordReplace |= (1u << texunit);
          } else if (iparam0 == GL_FALSE) {
             if (~(ctx->Point.CoordReplace) & (1u << texunit))
                return;
+            FLUSH_VERTICES(ctx, _NEW_POINT);
             ctx->Point.CoordReplace &= ~(1u << texunit);
          } else {
             _mesa_error( ctx, GL_INVALID_VALUE, "glTexEnv(param=0x%x)", iparam0);
             return;
          }
-         FLUSH_VERTICES(ctx, _NEW_POINT);
       }
       else {
          _mesa_error( ctx, GL_INVALID_ENUM, "glTexEnv(pname=0x%x)", pname );



More information about the mesa-commit mailing list