[Mesa-dev] [PATCH 3/3] mesa: check for no state change in glPrimitiveRestartIndex()

Brian Paul brian.e.paul at gmail.com
Sun Feb 19 18:53:03 PST 2012


From: Brian Paul <brianp at vmware.com>

---
 src/mesa/main/varray.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c
index 93f6fcd..39d3a27 100644
--- a/src/mesa/main/varray.c
+++ b/src/mesa/main/varray.c
@@ -1100,11 +1100,12 @@ _mesa_PrimitiveRestartIndex(GLuint index)
       return;
    }
 
-   ASSERT_OUTSIDE_BEGIN_END_AND_FLUSH(ctx);
-
-   FLUSH_VERTICES(ctx, _NEW_TRANSFORM);
+   ASSERT_OUTSIDE_BEGIN_END(ctx);
 
-   ctx->Array.RestartIndex = index;
+   if (ctx->Array.RestartIndex != index) {
+      FLUSH_VERTICES(ctx, _NEW_TRANSFORM);
+      ctx->Array.RestartIndex = index;
+   }
 }
 
 
-- 
1.7.1



More information about the mesa-dev mailing list