From: Zebediah Figura zfigura@codeweavers.com
--- dlls/wined3d/buffer.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/dlls/wined3d/buffer.c b/dlls/wined3d/buffer.c index 2131123bf44..a3c725136dd 100644 --- a/dlls/wined3d/buffer.c +++ b/dlls/wined3d/buffer.c @@ -1185,7 +1185,8 @@ void wined3d_buffer_update_sub_resource(struct wined3d_buffer *buffer, struct wi */ range.offset = offset; range.size = size; - wined3d_context_unmap_bo_address(context, (const struct wined3d_bo_address *)&upload_bo->addr, 1, &range); + if (upload_bo->addr.buffer_object->map_ptr) + wined3d_context_unmap_bo_address(context, (const struct wined3d_bo_address *)&upload_bo->addr, 1, &range); } else {