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@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Zebediah Figura 2022-05-30 20:10:08 -05:00 committed by Alexandre Julliard
parent d838cf7004
commit d67a9b5faa

View file

@ -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;
}