Zebediah Figura : wined3d: Always unmap buffer objects if ARB_buffer_storage is not supported.
Module: wine Branch: master Commit: d67a9b5faa7ac9e67234eff93f4e4748b0dc19d0 URL: https://source.winehq.org/git/wine.git/?a=commit;h=d67a9b5faa7ac9e67234eff93... Author: Zebediah Figura <zfigura(a)codeweavers.com> Date: Mon May 30 20:10:08 2022 -0500 wined3d: Always unmap buffer objects if ARB_buffer_storage is not supported. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52663 Signed-off-by: Zebediah Figura <zfigura(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/wined3d/context_gl.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dlls/wined3d/context_gl.c b/dlls/wined3d/context_gl.c index 8da17c9aa94..5ae237db54b 100644 --- a/dlls/wined3d/context_gl.c +++ b/dlls/wined3d/context_gl.c @@ -2937,7 +2937,8 @@ static void wined3d_bo_gl_unmap(struct wined3d_bo_gl *bo, struct wined3d_context { const struct wined3d_gl_info *gl_info = context_gl->gl_info; - if (context_gl->c.device->adapter->mapped_size <= MAX_PERSISTENT_MAPPED_BYTES) + if (context_gl->c.d3d_info->persistent_map + && context_gl->c.device->adapter->mapped_size <= MAX_PERSISTENT_MAPPED_BYTES) { TRACE("Not unmapping BO %p.\n", bo); return; @@ -2960,6 +2961,7 @@ static void wined3d_bo_gl_unmap(struct wined3d_bo_gl *bo, struct wined3d_context if (bo->b.client_map_count) { wined3d_device_bo_map_unlock(context_gl->c.device); + assert(context_gl->c.d3d_info->persistent_map); TRACE("BO %p is still in use by a client thread; not unmapping.\n", bo); return; }
participants (1)
-
Alexandre Julliard