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
9b8847ed7b.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Henri Verbeet 2020-06-15 21:06:02 +04:30 committed by Alexandre Julliard
parent 77bf4d4973
commit 67d0038e49
1 changed files with 7 additions and 7 deletions

View File

@ -1679,13 +1679,6 @@ HRESULT CDECL wined3d_check_device_format(const struct wined3d *wined3d,
for (; gl_type <= gl_type_end; ++gl_type) 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) if ((bind_flags & WINED3D_BIND_RENDER_TARGET)
&& !adapter->adapter_ops->adapter_check_format(adapter, adapter_format, format, NULL)) && !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; 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)) if (!(format->flags[gl_type] & WINED3DFMT_FLAG_GEN_MIPMAP))
mipmap_gen_supported = FALSE; mipmap_gen_supported = FALSE;
} }