From 67d0038e49323523b745c4a728069d8195273d23 Mon Sep 17 00:00:00 2001 From: Henri Verbeet Date: Mon, 15 Jun 2020 21:06:02 +0430 Subject: [PATCH] wined3d: Do not explicitly check 3D depth/stencil capabilities in wined3d_check_device_format(). WINED3D_RTYPE_NONE checks both 2D and 3D resource capabilities, but has special handling for 3D depth/stencil capabilities. For WINED3D_RTYPE_TEXTURE_3D, WINED3D_BIND_DEPTH_STENCIL is not an allowed bind flag, so we never get here. This fixes a regression introduced by commit 9b8847ed7b0f15c444c34034d311a8d79b3b06c8. Signed-off-by: Henri Verbeet Signed-off-by: Alexandre Julliard --- dlls/wined3d/directx.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index f4094c8fba2..efae3444eec 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -1679,13 +1679,6 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d, for (; gl_type <= gl_type_end; ++gl_type) { - if ((format->flags[gl_type] & format_flags) != format_flags) - { - TRACE("Requested format flags %#x, but format %s only has %#x.\n", - format_flags, debug_d3dformat(check_format_id), format->flags[gl_type]); - return WINED3DERR_NOTAVAILABLE; - } - if ((bind_flags & WINED3D_BIND_RENDER_TARGET) && !adapter->adapter_ops->adapter_check_format(adapter, adapter_format, format, NULL)) { @@ -1706,6 +1699,13 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d, return WINED3DERR_NOTAVAILABLE; } + if ((format->flags[gl_type] & format_flags) != format_flags) + { + TRACE("Requested format flags %#x, but format %s only has %#x.\n", + format_flags, debug_d3dformat(check_format_id), format->flags[gl_type]); + return WINED3DERR_NOTAVAILABLE; + } + if (!(format->flags[gl_type] & WINED3DFMT_FLAG_GEN_MIPMAP)) mipmap_gen_supported = FALSE; }