Mesa (master): st/mesa: tell VBO module to always unmap buffers before drawing

Brian Paul brianp at kemper.freedesktop.org
Wed Oct 26 17:34:50 PDT 2011


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

Author: Brian Paul <brianp at vmware.com>
Date:   Tue Oct 25 17:41:12 2011 -0600

st/mesa: tell VBO module to always unmap buffers before drawing

Without this it's possible to wind up in a draw call with the
glBegin/End VBO still in a mapped state.  This is a problem for
the SVGA3D driver and probably not good for other HW drivers.

---

 src/mesa/state_tracker/st_context.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/mesa/state_tracker/st_context.c b/src/mesa/state_tracker/st_context.c
index 6d4bc54..a181772 100644
--- a/src/mesa/state_tracker/st_context.c
+++ b/src/mesa/state_tracker/st_context.c
@@ -144,6 +144,10 @@ st_create_context_priv( struct gl_context *ctx, struct pipe_context *pipe )
    /* we want all vertex data to be placed in buffer objects */
    vbo_use_buffer_objects(ctx);
 
+
+   /* make sure that no VBOs are left mapped when we're drawing. */
+   vbo_always_unmap_buffers(ctx);
+
    /* Need these flags:
     */
    st->ctx->FragmentProgram._MaintainTexEnvProgram = GL_TRUE;



More information about the mesa-commit mailing list