From 26500c3fad822ebcd7e2df186d59f96ae550ef64 Mon Sep 17 00:00:00 2001 From: Brian Paul Date: Fri, 9 Jun 2017 21:21:12 -0600 Subject: [PATCH] st/mesa: unmap the stream_uploader buffer before drawing MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Some drivers require that the vertex buffers be unmapped prior to drawing. This change unmaps the stream_uploader buffer after we've uploaded the zero-stride attributes (unless the driver supports rendering with mapped buffers). This fixes a regression in the VMware driver since 17f776c27be266f2. Some Mesa demos such as mandelbrot and brick would display black quads instead of the expected rendering. Reviewed-by: Marek Olšák --- src/mesa/state_tracker/st_atom_array.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mesa/state_tracker/st_atom_array.c b/src/mesa/state_tracker/st_atom_array.c index c7467eb20b7..6af1355ee17 100644 --- a/src/mesa/state_tracker/st_atom_array.c +++ b/src/mesa/state_tracker/st_atom_array.c @@ -670,6 +670,10 @@ setup_non_interleaved_attribs(struct st_context *st, array->Size, array->Doubles, &attr); } + if (!ctx->Const.AllowMappedBuffersDuringExecution) { + u_upload_unmap(st->pipe->stream_uploader); + } + set_vertex_attribs(st, vbuffer, num_vbuffers, velements, num_inputs); /* Unreference uploaded zero-stride vertex buffers. */ -- 2.30.2