From 5dd3b178ce8cbebf84de3f418115a47798144dbc Mon Sep 17 00:00:00 2001 From: Zebediah Figura Date: Fri, 18 Feb 2022 15:50:25 +0100 Subject: [PATCH] wined3d: Set a valid map pointer in adapter_gl_alloc_bo() if possible. Signed-off-by: Zebediah Figura Signed-off-by: Henri Verbeet Signed-off-by: Alexandre Julliard --- dlls/wined3d/adapter_gl.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/dlls/wined3d/adapter_gl.c b/dlls/wined3d/adapter_gl.c index cb0c34823aa..4e93e25452d 100644 --- a/dlls/wined3d/adapter_gl.c +++ b/dlls/wined3d/adapter_gl.c @@ -4646,6 +4646,18 @@ static bool adapter_gl_alloc_bo(struct wined3d_device *device, struct wined3d_re return false; } + if (bo_gl->memory) + { + struct wined3d_allocator_chunk_gl *chunk = wined3d_allocator_chunk_gl(bo_gl->memory->chunk); + + wined3d_allocator_chunk_gl_lock(chunk); + + if ((bo_gl->b.map_ptr = chunk->c.map_ptr)) + ++chunk->c.map_count; + + wined3d_allocator_chunk_gl_unlock(chunk); + } + addr->buffer_object = &bo_gl->b; addr->addr = NULL;