Zebediah Figura : wined3d: Always unmap buffer objects if ARB_buffer_storage is not supported.
Alexandre Julliard
julliard at winehq.org
Wed Jun 1 15:44:32 CDT 2022
Module: wine
Branch: master
Commit: d67a9b5faa7ac9e67234eff93f4e4748b0dc19d0
URL: https://source.winehq.org/git/wine.git/?a=commit;h=d67a9b5faa7ac9e67234eff93f4e4748b0dc19d0
Author: Zebediah Figura <zfigura at 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 at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at 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;
}
More information about the wine-cvs
mailing list