Applications calling wined3d_device_context_resolve_sub_resource() on a deferred context would instead get this scheduled on the immediate context. Worse, because the original call was intended for a deferred context, we'd do this without taking the mutex required for immediate contexts, potentially corrupting the command stream.
From: Henri Verbeet hverbeet@codeweavers.com
Applications calling wined3d_device_context_resolve_sub_resource() on a deferred context would instead get this scheduled on the immediate context. Worse, because the original call was intended for a deferred context, we'd do this without taking the mutex required for immediate contexts, potentially corrupting the command stream. --- dlls/wined3d/texture.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c index c76a50ea6ae..f385394497b 100644 --- a/dlls/wined3d/texture.c +++ b/dlls/wined3d/texture.c @@ -4168,8 +4168,8 @@ HRESULT CDECL wined3d_device_context_blt(struct wined3d_device_context *context, return E_NOTIMPL; }
- wined3d_device_context_emit_blt_sub_resource(&dst_texture->resource.device->cs->c, &dst_texture->resource, - dst_sub_resource_idx, &dst_box, &src_texture->resource, src_sub_resource_idx, &src_box, flags, fx, filter); + wined3d_device_context_emit_blt_sub_resource(context, &dst_texture->resource, dst_sub_resource_idx, + &dst_box, &src_texture->resource, src_sub_resource_idx, &src_box, flags, fx, filter);
if (dst_texture->dirty_regions) wined3d_texture_add_dirty_region(dst_texture, dst_sub_resource_idx, &dst_box);
Hi,
It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated.
The tests also ran into some preexisting test failures. If you know how to fix them that would be helpful. See the TestBot job for the details:
The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=124921
Your paranoid android.
=== debian11 (32 bit report) ===
dinput: force_feedback.c:5841: Test failed: got status 0 force_feedback.c:5846: Test failed: handler not invoked force_feedback.c:5847: Test failed: got async 00000000
=== debian11 (build log) ===
Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 24688. Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 24688. Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 24688.
This merge request was approved by Zebediah Figura.