Zebediah Figura : d3d11: Always return E_FAIL for formats which have no support flags.
Alexandre Julliard
julliard at winehq.org
Tue Aug 16 16:01:00 CDT 2022
Module: wine
Branch: master
Commit: 74ad023154e00cb5273ad855d29e463f13a544c3
URL: https://gitlab.winehq.org/wine/wine/-/commit/74ad023154e00cb5273ad855d29e463f13a544c3
Author: Zebediah Figura <zfigura at codeweavers.com>
Date: Wed Aug 10 12:13:01 2022 -0500
d3d11: Always return E_FAIL for formats which have no support flags.
---
dlls/d3d11/device.c | 2 +-
dlls/d3d11/tests/d3d11.c | 11 +++++++----
2 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/dlls/d3d11/device.c b/dlls/d3d11/device.c
index 0ae695901da..79b972df671 100644
--- a/dlls/d3d11/device.c
+++ b/dlls/d3d11/device.c
@@ -3959,7 +3959,7 @@ static HRESULT STDMETHODCALLTYPE d3d11_device_CheckFormatSupport(ID3D11Device2 *
| D3D11_FORMAT_SUPPORT_MULTISAMPLE_LOAD;
}
- return S_OK;
+ return *format_support ? S_OK : E_FAIL;
}
static HRESULT STDMETHODCALLTYPE d3d11_device_CheckMultisampleQualityLevels(ID3D11Device2 *iface,
diff --git a/dlls/d3d11/tests/d3d11.c b/dlls/d3d11/tests/d3d11.c
index eab45931d2d..034b5e4320f 100644
--- a/dlls/d3d11/tests/d3d11.c
+++ b/dlls/d3d11/tests/d3d11.c
@@ -21062,15 +21062,18 @@ static void test_format_support(const D3D_FEATURE_LEVEL feature_level)
memset(format_support, 0, sizeof(format_support));
for (format = DXGI_FORMAT_UNKNOWN; format <= DXGI_FORMAT_B4G4R4A4_UNORM; ++format)
{
+ winetest_push_context("format %#x", format);
+
hr = ID3D11Device_CheckFormatSupport(device, format, &format_support[format]);
- ok(hr == S_OK || (hr == E_FAIL && !format_support[format]),
- "Got unexpected result for format %#x: hr %#lx, format_support %#x.\n",
- format, hr, format_support[format]);
+ ok((hr == S_OK && format_support[format]) || (hr == E_FAIL && !format_support[format]),
+ "Got unexpected hr %#lx, format_support %#x.\n", hr, format_support[format]);
if (format_support[format] & D3D11_FORMAT_SUPPORT_MIP_AUTOGEN)
{
ok(format_support[format] & D3D11_FORMAT_SUPPORT_TEXTURE2D,
- "Got unexpected format support %#x for format %#x", format_support[format], format);
+ "Got unexpected format support %#x", format);
}
+
+ winetest_pop_context();
}
for (format = DXGI_FORMAT_UNKNOWN; format <= DXGI_FORMAT_B4G4R4A4_UNORM; ++format)
More information about the wine-cvs
mailing list