[PATCH 2/2] wined3d: Always unmap buffer objects if ARB_buffer_storage is not supported.
Zebediah Figura
zfigura at codeweavers.com
Mon May 30 20:10:08 CDT 2022
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52663
Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
---
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 1e4fcd12e9d..a0c7457d922 100644
--- a/dlls/wined3d/context_gl.c
+++ b/dlls/wined3d/context_gl.c
@@ -2939,7 +2939,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;
@@ -2962,6 +2963,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;
}
--
2.35.1
More information about the wine-devel
mailing list