-- v4: d3d11: Check for WINED3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING with WINED3D_RTYPE_TEXTURE_2D. wined3d: Retrieve caps from both WINED3D_GL_RES_TYPE_TEX_2D and WINED3D_GL_RES_TYPE_RB for 2D textures in wined3d_check_device_format(). wined3d: Report WINED3D_FORMAT_CAP_BLIT for formats supporting VK_FORMAT_FEATURE_TRANSFER_SRC and VK_FORMAT_FEATURE_TRANSFER_DST. wined3d: Add Vulkan format information for WINED3DFMT_B5G6R5_UNORM. d3d11/tests: Add tests for D3D11_FORMAT_SUPPORT_BLENDABLE.
From: Zebediah Figura zfigura@codeweavers.com
--- dlls/d3d11/tests/d3d11.c | 55 +++++++++++++++++++++++++++++++++------- 1 file changed, 46 insertions(+), 9 deletions(-)
diff --git a/dlls/d3d11/tests/d3d11.c b/dlls/d3d11/tests/d3d11.c index 345a87c4194..4856aa32358 100644 --- a/dlls/d3d11/tests/d3d11.c +++ b/dlls/d3d11/tests/d3d11.c @@ -20758,9 +20758,9 @@ static void test_line_antialiasing_blending(void) release_test_context(&test_context); }
-static void check_format_support(const unsigned int *format_support, D3D_FEATURE_LEVEL feature_level, - const struct format_support *formats, unsigned int format_count, unsigned int feature_flag, - const char *feature_name) +static void check_format_support(ID3D11Device *device, const unsigned int *format_support, + D3D_FEATURE_LEVEL feature_level, const struct format_support *formats, + unsigned int format_count, unsigned int feature_flag, const char *feature_name) { unsigned int i;
@@ -20771,8 +20771,9 @@ static void check_format_support(const unsigned int *format_support, D3D_FEATURE
if (formats[i].fl_required <= feature_level) { - todo_wine_if (feature_flag == D3D11_FORMAT_SUPPORT_DISPLAY) - ok(supported, "Format %#x - %s not supported, feature_level %#x, format support %#x.\n", + todo_wine_if (feature_flag == D3D11_FORMAT_SUPPORT_DISPLAY || feature_flag == D3D11_FORMAT_SUPPORT_BLENDABLE) + ok(supported || broken(is_warp_device(device)), + "Format %#x - %s not supported, feature_level %#x, format support %#x.\n", format, feature_name, feature_level, format_support[format]); continue; } @@ -20785,7 +20786,7 @@ static void check_format_support(const unsigned int *format_support, D3D_FEATURE continue; }
- todo_wine_if (feature_flag != D3D11_FORMAT_SUPPORT_DISPLAY) + todo_wine_if (feature_flag != D3D11_FORMAT_SUPPORT_DISPLAY && feature_flag != D3D11_FORMAT_SUPPORT_BLENDABLE) ok(!supported, "Format %#x - %s supported, feature level %#x, format support %#x.\n", format, feature_name, feature_level, format_support[format]); } @@ -20814,6 +20815,39 @@ static void test_format_support(const D3D_FEATURE_LEVEL feature_level) {DXGI_FORMAT_R16_FLOAT, D3D_FEATURE_LEVEL_10_0}, };
+ static const struct format_support blend[] = + { + {DXGI_FORMAT_R16G16B16A16_UNORM, D3D_FEATURE_LEVEL_10_1, D3D_FEATURE_LEVEL_10_0}, + {DXGI_FORMAT_R16G16_UNORM, D3D_FEATURE_LEVEL_10_1, D3D_FEATURE_LEVEL_10_0}, + {DXGI_FORMAT_R16_UNORM, D3D_FEATURE_LEVEL_10_1, D3D_FEATURE_LEVEL_10_0}, + {DXGI_FORMAT_R16G16B16A16_SNORM, D3D_FEATURE_LEVEL_10_1}, + {DXGI_FORMAT_R16G16_SNORM, D3D_FEATURE_LEVEL_10_1}, + {DXGI_FORMAT_R16_SNORM, D3D_FEATURE_LEVEL_10_1}, + {DXGI_FORMAT_R8G8B8A8_SNORM, D3D_FEATURE_LEVEL_10_1}, + {DXGI_FORMAT_R8G8_SNORM, D3D_FEATURE_LEVEL_10_1}, + {DXGI_FORMAT_R8_SNORM, D3D_FEATURE_LEVEL_10_1}, + + {DXGI_FORMAT_R32G32B32A32_FLOAT, D3D_FEATURE_LEVEL_10_0}, + {DXGI_FORMAT_R32G32_FLOAT, D3D_FEATURE_LEVEL_10_0}, + {DXGI_FORMAT_R32_FLOAT, D3D_FEATURE_LEVEL_10_0}, + {DXGI_FORMAT_R10G10B10A2_UNORM, D3D_FEATURE_LEVEL_10_0}, + {DXGI_FORMAT_R11G11B10_FLOAT, D3D_FEATURE_LEVEL_10_0}, + {DXGI_FORMAT_R16_FLOAT, D3D_FEATURE_LEVEL_10_0}, + + {DXGI_FORMAT_R16G16B16A16_FLOAT, D3D_FEATURE_LEVEL_9_3}, + + {DXGI_FORMAT_R8G8B8A8_UNORM, D3D_FEATURE_LEVEL_9_1}, + {DXGI_FORMAT_R8G8B8A8_UNORM_SRGB, D3D_FEATURE_LEVEL_9_1}, + {DXGI_FORMAT_R8G8_UNORM, D3D_FEATURE_LEVEL_9_1}, + {DXGI_FORMAT_R8_UNORM, D3D_FEATURE_LEVEL_9_1}, + {DXGI_FORMAT_A8_UNORM, D3D_FEATURE_LEVEL_9_1}, + {DXGI_FORMAT_B5G6R5_UNORM, D3D_FEATURE_LEVEL_9_1}, + {DXGI_FORMAT_B8G8R8A8_UNORM, D3D_FEATURE_LEVEL_9_1}, + {DXGI_FORMAT_B8G8R8X8_UNORM, D3D_FEATURE_LEVEL_9_1}, + {DXGI_FORMAT_B8G8R8A8_UNORM_SRGB, D3D_FEATURE_LEVEL_9_1}, + {DXGI_FORMAT_B8G8R8X8_UNORM_SRGB, D3D_FEATURE_LEVEL_9_1}, + }; + device_desc.feature_level = &feature_level; device_desc.flags = 0; if (!(device = create_device(&device_desc))) @@ -20875,18 +20909,21 @@ static void test_format_support(const D3D_FEATURE_LEVEL feature_level) "SHADER_LOAD is not supported for R32G32B32A32_UINT.\n"); }
- check_format_support(format_support, feature_level, + check_format_support(device, format_support, feature_level, index_buffers, ARRAY_SIZE(index_buffers), D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER, "index buffer");
- check_format_support(format_support, feature_level, + check_format_support(device, format_support, feature_level, vertex_buffers, ARRAY_SIZE(vertex_buffers), D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER, "vertex buffer");
- check_format_support(format_support, feature_level, + check_format_support(device, format_support, feature_level, display_format_support, ARRAY_SIZE(display_format_support), D3D11_FORMAT_SUPPORT_DISPLAY, "display");
+ check_format_support(device, format_support, feature_level, blend, ARRAY_SIZE(blend), + D3D11_FORMAT_SUPPORT_BLENDABLE, "blendable"); + refcount = ID3D11Device_Release(device); ok(!refcount, "Device has %lu references left.\n", refcount); }
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=117529
Your paranoid android.
=== build (build log) ===
WineRunBuild.pl:error: The build timed out
=== debian11 (64 bit WoW report) ===
d3d11: d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Format 0x1d - display not supported, feature_level 0xa100, format support 0x8073f1. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: d3d11.c:1570: Test marked todo: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: d3d11.c:1570: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: d3d11.c:1565: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: d3d11.c:1565: Test succeeded inside todo block: d3d11.c:1565: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: d3d11.c:1570: d3d11.c:1570: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: d3d11.c:1570: d3d11.c:1565: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: d3d11.c:1570: Test succeeded inside todo block: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0.
From: Zebediah Figura zfigura@codeweavers.com
--- dlls/wined3d/utils.c | 1 + 1 file changed, 1 insertion(+)
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c index 381c1ae7bc6..7761576c058 100644 --- a/dlls/wined3d/utils.c +++ b/dlls/wined3d/utils.c @@ -4300,6 +4300,7 @@ static void init_vulkan_format_info(struct wined3d_format_vk *format, {WINED3DFMT_B8G8R8A8_UNORM_SRGB, VK_FORMAT_B8G8R8A8_SRGB, }, {WINED3DFMT_B8G8R8X8_UNORM, VK_FORMAT_B8G8R8A8_UNORM, "XYZ1"}, {WINED3DFMT_B8G8R8X8_UNORM_SRGB, VK_FORMAT_B8G8R8A8_SRGB, "XYZ1"}, + {WINED3DFMT_B5G6R5_UNORM, VK_FORMAT_R5G6B5_UNORM_PACK16, }, {WINED3DFMT_BC1_UNORM, VK_FORMAT_BC1_RGBA_UNORM_BLOCK, }, {WINED3DFMT_BC1_UNORM_SRGB, VK_FORMAT_BC1_RGBA_SRGB_BLOCK, }, {WINED3DFMT_BC2_UNORM, VK_FORMAT_BC2_UNORM_BLOCK, },
From: Zebediah Figura zfigura@codeweavers.com
Vulkan 1.0 implementations without KHR_maintenance1 will still be broken. In order to work around this we would have to try creating textures with TRANSFER_* usage. This does not seem worthwhile. --- dlls/wined3d/utils.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/dlls/wined3d/utils.c b/dlls/wined3d/utils.c index 7761576c058..06c95135678 100644 --- a/dlls/wined3d/utils.c +++ b/dlls/wined3d/utils.c @@ -4397,6 +4397,11 @@ static void init_vulkan_format_info(struct wined3d_format_vk *format, { caps |= WINED3D_FORMAT_CAP_UNORDERED_ACCESS; } + if ((texture_flags & VK_FORMAT_FEATURE_TRANSFER_SRC_BIT) + && (texture_flags & VK_FORMAT_FEATURE_TRANSFER_DST_BIT)) + { + caps |= WINED3D_FORMAT_CAP_BLIT; + }
if (!(~caps & (WINED3D_FORMAT_CAP_RENDERTARGET | WINED3D_FORMAT_CAP_FILTERING))) caps |= WINED3D_FORMAT_CAP_GEN_MIPMAP;
From: Zebediah Figura zfigura@codeweavers.com
WINED3D_GL_RES_TYPE_RB is not used by the Vulkan backend.
We could alternatively solve this by filling WINED3D_GL_RES_TYPE_RB for the Vulkan backend, but this makes less sense. Checking both formats is more in line with what is done elsewhere, e.g. wined3d_check_surface_format(). --- dlls/wined3d/directx.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index 6f8d1edad6e..85405eaa6b5 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -1974,6 +1974,7 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d, allowed_bind_flags = WINED3D_BIND_RENDER_TARGET | WINED3D_BIND_DEPTH_STENCIL | WINED3D_BIND_UNORDERED_ACCESS; + gl_type = gl_type_end = WINED3D_GL_RES_TYPE_TEX_2D; if (!(bind_flags & WINED3D_BIND_SHADER_RESOURCE)) { if (!wined3d_check_surface_format(format)) @@ -1981,8 +1982,6 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d, TRACE("%s is not supported for plain surfaces.\n", debug_d3dformat(format->id)); return WINED3DERR_NOTAVAILABLE; } - - gl_type = gl_type_end = WINED3D_GL_RES_TYPE_RB; break; } allowed_usage |= WINED3DUSAGE_DYNAMIC @@ -1996,7 +1995,6 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d, | WINED3DUSAGE_QUERY_VERTEXTEXTURE | WINED3DUSAGE_QUERY_WRAPANDMIP; allowed_bind_flags |= WINED3D_BIND_SHADER_RESOURCE; - gl_type = gl_type_end = WINED3D_GL_RES_TYPE_TEX_2D; if (usage & WINED3DUSAGE_LEGACY_CUBEMAP) { allowed_usage &= ~WINED3DUSAGE_QUERY_LEGACYBUMPMAP; @@ -2095,10 +2093,15 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d,
for (; gl_type <= gl_type_end; ++gl_type) { - if ((format->caps[gl_type] & format_caps) != format_caps) + unsigned int caps = format->caps[gl_type]; + + if (gl_type == WINED3D_GL_RES_TYPE_TEX_2D && !(bind_flags & WINED3D_BIND_SHADER_RESOURCE)) + caps |= format->caps[WINED3D_GL_RES_TYPE_RB]; + + if ((caps & format_caps) != format_caps) { TRACE("Requested format caps %#x, but format %s only has %#x.\n", - format_caps, debug_d3dformat(check_format_id), format->caps[gl_type]); + format_caps, debug_d3dformat(check_format_id), caps); return WINED3DERR_NOTAVAILABLE; }
@@ -2129,7 +2132,7 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d, return WINED3DERR_NOTAVAILABLE; }
- if (!(format->caps[gl_type] & WINED3D_FORMAT_CAP_GEN_MIPMAP)) + if (!(caps & WINED3D_FORMAT_CAP_GEN_MIPMAP)) mipmap_gen_supported = FALSE; }
From: Zebediah Figura zfigura@codeweavers.com
This fixes rendering in Raft. --- dlls/d3d11/device.c | 2 +- dlls/d3d11/tests/d3d11.c | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c index e93cdf74518..d510cebb110 100644 --- a/dlls/d3d11/device.c +++ b/dlls/d3d11/device.c @@ -3886,7 +3886,7 @@ static HRESULT STDMETHODCALLTYPE d3d11_device_CheckFormatSupport(ID3D11Device2 * {WINED3D_RTYPE_NONE, WINED3D_BIND_UNORDERED_ACCESS, 0, D3D11_FORMAT_SUPPORT_TYPED_UNORDERED_ACCESS_VIEW}, {WINED3D_RTYPE_TEXTURE_2D, WINED3D_BIND_SHADER_RESOURCE, WINED3DUSAGE_QUERY_WRAPANDMIP, D3D11_FORMAT_SUPPORT_MIP}, {WINED3D_RTYPE_TEXTURE_2D, WINED3D_BIND_SHADER_RESOURCE, WINED3DUSAGE_QUERY_GENMIPMAP, D3D11_FORMAT_SUPPORT_MIP_AUTOGEN}, - {WINED3D_RTYPE_NONE, WINED3D_BIND_RENDER_TARGET, WINED3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING, D3D11_FORMAT_SUPPORT_BLENDABLE}, + {WINED3D_RTYPE_TEXTURE_2D, WINED3D_BIND_RENDER_TARGET, WINED3DUSAGE_QUERY_POSTPIXELSHADER_BLENDING, D3D11_FORMAT_SUPPORT_BLENDABLE}, }; HRESULT hr;
diff --git a/dlls/d3d11/tests/d3d11.c b/dlls/d3d11/tests/d3d11.c index 4856aa32358..5ba6bb7ce14 100644 --- a/dlls/d3d11/tests/d3d11.c +++ b/dlls/d3d11/tests/d3d11.c @@ -20771,7 +20771,7 @@ static void check_format_support(ID3D11Device *device, const unsigned int *forma
if (formats[i].fl_required <= feature_level) { - todo_wine_if (feature_flag == D3D11_FORMAT_SUPPORT_DISPLAY || feature_flag == D3D11_FORMAT_SUPPORT_BLENDABLE) + todo_wine_if (feature_flag == D3D11_FORMAT_SUPPORT_DISPLAY) ok(supported || broken(is_warp_device(device)), "Format %#x - %s not supported, feature_level %#x, format support %#x.\n", format, feature_name, feature_level, format_support[format]); @@ -20786,7 +20786,7 @@ static void check_format_support(ID3D11Device *device, const unsigned int *forma continue; }
- todo_wine_if (feature_flag != D3D11_FORMAT_SUPPORT_DISPLAY && feature_flag != D3D11_FORMAT_SUPPORT_BLENDABLE) + todo_wine_if (feature_flag != D3D11_FORMAT_SUPPORT_DISPLAY) ok(!supported, "Format %#x - %s supported, feature level %#x, format support %#x.\n", format, feature_name, feature_level, format_support[format]); }
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=117533
Your paranoid android.
=== debian11 (64 bit WoW report) ===
d3d11: d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1565: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1567: Test succeeded inside todo block: Got unexpected hr 0. d3d11.c:1570: Test succeeded inside todo block: Got unexpected hr 0.
This merge request was approved by Jan Sikorski.