[PATCH v3 3/6] d3dx9: Factor our check_texture_requirements() function.
Paul Gofman
gofmanp at gmail.com
Mon Oct 28 01:27:40 CDT 2019
Signed-off-by: Paul Gofman <gofmanp at gmail.com>
---
v3:
- leave TRACE() in place.
dlls/d3dx9_36/texture.c | 19 +++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-)
diff --git a/dlls/d3dx9_36/texture.c b/dlls/d3dx9_36/texture.c
index 3f22b050b6..2da4e9955e 100644
--- a/dlls/d3dx9_36/texture.c
+++ b/dlls/d3dx9_36/texture.c
@@ -210,8 +210,8 @@ static D3DFORMAT get_replacement_format(D3DFORMAT format)
return format;
}
-HRESULT WINAPI D3DXCheckTextureRequirements(struct IDirect3DDevice9 *device, UINT *width, UINT *height,
- UINT *miplevels, DWORD usage, D3DFORMAT *format, D3DPOOL pool)
+static HRESULT check_texture_requirements(struct IDirect3DDevice9 *device, UINT *width, UINT *height,
+ UINT *miplevels, DWORD usage, D3DFORMAT *format, D3DPOOL pool, D3DRESOURCETYPE resource_type)
{
UINT w = (width && *width) ? *width : 1;
UINT h = (height && *height) ? *height : 1;
@@ -223,8 +223,6 @@ HRESULT WINAPI D3DXCheckTextureRequirements(struct IDirect3DDevice9 *device, UIN
D3DFORMAT usedformat = D3DFMT_UNKNOWN;
const struct pixel_format_desc *fmt;
- TRACE("(%p, %p, %p, %p, %u, %p, %u)\n", device, width, height, miplevels, usage, format, pool);
-
if (!device)
return D3DERR_INVALIDCALL;
@@ -266,7 +264,7 @@ HRESULT WINAPI D3DXCheckTextureRequirements(struct IDirect3DDevice9 *device, UIN
fmt = get_format_info(usedformat);
hr = IDirect3D9_CheckDeviceFormat(d3d, params.AdapterOrdinal, params.DeviceType, mode.Format,
- usage, D3DRTYPE_TEXTURE, usedformat);
+ usage, resource_type, usedformat);
if (FAILED(hr))
{
BOOL allow_24bits;
@@ -301,7 +299,7 @@ HRESULT WINAPI D3DXCheckTextureRequirements(struct IDirect3DDevice9 *device, UIN
continue;
hr = IDirect3D9_CheckDeviceFormat(d3d, params.AdapterOrdinal, params.DeviceType,
- mode.Format, usage, D3DRTYPE_TEXTURE, curfmt->format);
+ mode.Format, usage, resource_type, curfmt->format);
if (FAILED(hr))
continue;
@@ -420,6 +418,15 @@ cleanup:
return D3D_OK;
}
+HRESULT WINAPI D3DXCheckTextureRequirements(struct IDirect3DDevice9 *device, UINT *width, UINT *height,
+ UINT *miplevels, DWORD usage, D3DFORMAT *format, D3DPOOL pool)
+{
+ TRACE("device %p, width %p, height %p, miplevels %p, usage %u, format %p, pool %u.\n",
+ device, width, height, miplevels, usage, format, pool);
+
+ return check_texture_requirements(device, width, height, miplevels, usage, format, pool, D3DRTYPE_TEXTURE);
+}
+
HRESULT WINAPI D3DXCheckCubeTextureRequirements(struct IDirect3DDevice9 *device, UINT *size,
UINT *miplevels, DWORD usage, D3DFORMAT *format, D3DPOOL pool)
{
--
2.21.0
More information about the wine-devel
mailing list