Module: Mesa
Branch: master
Commit: f102c5220c8b671d92c04dce803b9c1f474f7253
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f102c5220c8b671d92c04dce803b9c1f474f7253

Author: Francisco Jerez <curroje...@riseup.net>
Date:   Mon Oct 25 21:35:54 2010 +0200

dri/nouveau: Call _mesa_update_state() after framebuffer invalidation.

Previously nouveau_state_emit() was being called directly, sometimes
that doesn't work because it doesn't update the derived GL context.

---

 src/mesa/drivers/dri/nouveau/nouveau_context.c |    3 ++-
 src/mesa/drivers/dri/nouveau/nv10_context.c    |    4 ++++
 2 files changed, 6 insertions(+), 1 deletions(-)

diff --git a/src/mesa/drivers/dri/nouveau/nouveau_context.c 
b/src/mesa/drivers/dri/nouveau/nouveau_context.c
index 0ace139..c6cf781 100644
--- a/src/mesa/drivers/dri/nouveau/nouveau_context.c
+++ b/src/mesa/drivers/dri/nouveau/nouveau_context.c
@@ -365,5 +365,6 @@ nouveau_validate_framebuffer(struct gl_context *ctx)
                validate_framebuffer(dri_ctx, dri_read,
                                     &dri_ctx->dri2.read_stamp);
 
-       nouveau_state_emit(ctx);
+       if (ctx->NewState & _NEW_BUFFERS)
+               _mesa_update_state(ctx);
 }
diff --git a/src/mesa/drivers/dri/nouveau/nv10_context.c 
b/src/mesa/drivers/dri/nouveau/nv10_context.c
index fdcb43b..78be401 100644
--- a/src/mesa/drivers/dri/nouveau/nv10_context.c
+++ b/src/mesa/drivers/dri/nouveau/nv10_context.c
@@ -24,6 +24,7 @@
  *
  */
 
+#include "main/state.h"
 #include "nouveau_driver.h"
 #include "nouveau_context.h"
 #include "nouveau_fbo.h"
@@ -184,6 +185,9 @@ nv10_clear(struct gl_context *ctx, GLbitfield buffers)
                        nv17_zclear(ctx, &buffers);
                else
                        nv10_zclear(ctx, &buffers);
+
+               /* Emit the zclear state if it's dirty */
+               _mesa_update_state(ctx);
        }
 
        nouveau_clear(ctx, buffers);

_______________________________________________
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to