Mesa (master): mesa: The glArrayElement api is independent of the current program.
Mathias Fröhlich
frohlich at kemper.freedesktop.org
Thu May 17 18:27:20 UTC 2018
Module: Mesa
Branch: master
Commit: 6fac626193a077cba3154acf3820b30fc6f3e874
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=6fac626193a077cba3154acf3820b30fc6f3e874
Author: Mathias Fröhlich <mathias.froehlich at web.de>
Date: Sun May 13 09:18:57 2018 +0200
mesa: The glArrayElement api is independent of the current program.
All the shader program dependent handling is done on the level
of the gl_Context::Array._DrawVAO/_DrawVAOEnabledAttribs.
So, skip array element invalidation on _NEW_PROGRAM.
Reviewed-by: Brian Paul <brianp at vmware.com>
Signed-off-by: Mathias Fröhlich <Mathias.Froehlich at web.de>
---
src/mesa/main/api_arrayelt.c | 2 +-
src/mesa/vbo/vbo_context.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/mesa/main/api_arrayelt.c b/src/mesa/main/api_arrayelt.c
index 2dfa74f64b..afa3012021 100644
--- a/src/mesa/main/api_arrayelt.c
+++ b/src/mesa/main/api_arrayelt.c
@@ -1823,7 +1823,7 @@ _ae_invalidate_state(struct gl_context *ctx)
* Luckily, neither the drivers nor tnl muck with the state that
* concerns us here:
*/
- assert(ctx->NewState & (_NEW_ARRAY | _NEW_PROGRAM));
+ assert(ctx->NewState & _NEW_ARRAY);
assert(!actx->mapped_vbos);
actx->dirty_state = true;
diff --git a/src/mesa/vbo/vbo_context.c b/src/mesa/vbo/vbo_context.c
index ee2e31ab7a..cf9405df3d 100644
--- a/src/mesa/vbo/vbo_context.c
+++ b/src/mesa/vbo/vbo_context.c
@@ -157,7 +157,7 @@ vbo_exec_invalidate_state(struct gl_context *ctx)
struct vbo_context *vbo = vbo_context(ctx);
struct vbo_exec_context *exec = &vbo->exec;
- if (ctx->NewState & (_NEW_PROGRAM | _NEW_ARRAY)) {
+ if (ctx->NewState & _NEW_ARRAY) {
_ae_invalidate_state(ctx);
}
if (ctx->NewState & _NEW_EVAL)
More information about the mesa-commit
mailing list