[PATCH 4/5] d3dx9/tests: Add a few missing surface Release() calls.
Matteo Bruni
mbruni at codeweavers.com
Tue Mar 13 13:17:41 CDT 2018
Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
---
dlls/d3dx9_36/tests/texture.c | 138 ++++++++++++++++++------------------------
1 file changed, 60 insertions(+), 78 deletions(-)
diff --git a/dlls/d3dx9_36/tests/texture.c b/dlls/d3dx9_36/tests/texture.c
index 154c569f400..79cddc73ab6 100644
--- a/dlls/d3dx9_36/tests/texture.c
+++ b/dlls/d3dx9_36/tests/texture.c
@@ -1563,28 +1563,25 @@ static void test_D3DXCreateTextureFromFileInMemoryEx(IDirect3DDevice9 *device)
hr = D3DXCreateTextureFromFileInMemoryEx(device, dds_16bit, sizeof(dds_16bit), D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT,
0, D3DFMT_UNKNOWN, D3DPOOL_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x\n", hr, D3D_OK);
- if (SUCCEEDED(hr)) IDirect3DTexture9_Release(texture);
+ IDirect3DTexture9_Release(texture);
hr = D3DXCreateTextureFromFileInMemoryEx(device, dds_16bit, sizeof(dds_16bit), D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT,
D3DUSAGE_DYNAMIC, D3DFMT_UNKNOWN, D3DPOOL_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x\n", hr, D3D_OK);
- if (SUCCEEDED(hr)) IDirect3DTexture9_Release(texture);
+ IDirect3DTexture9_Release(texture);
hr = D3DXCreateTextureFromFileInMemoryEx(device, dds_24bit, sizeof(dds_24bit), D3DX_DEFAULT,
D3DX_DEFAULT, D3DX_DEFAULT, D3DUSAGE_DYNAMIC, D3DFMT_UNKNOWN, D3DPOOL_DEFAULT,
D3DX_DEFAULT, D3DX_SKIP_DDS_MIP_LEVELS(1, D3DX_FILTER_POINT), 0, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x\n", hr, D3D_OK);
- if (SUCCEEDED(hr))
- {
- miplevels = IDirect3DTexture9_GetLevelCount(texture);
- ok(miplevels == 1, "Got miplevels %u, expected %u\n", miplevels, 1);
- IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
- IDirect3DSurface9_GetDesc(surface, &desc);
- ok(desc.Width == 1 && desc.Height == 1,
- "Surface dimensions are %ux%u, expected 1x1.\n", desc.Width, desc.Height);
- IDirect3DSurface9_Release(surface);
- IDirect3DTexture9_Release(texture);
- }
+ miplevels = IDirect3DTexture9_GetLevelCount(texture);
+ ok(miplevels == 1, "Got miplevels %u, expected %u.\n", miplevels, 1);
+ IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
+ IDirect3DSurface9_GetDesc(surface, &desc);
+ ok(desc.Width == 1 && desc.Height == 1,
+ "Surface dimensions are %ux%u, expected 1x1.\n", desc.Width, desc.Height);
+ IDirect3DSurface9_Release(surface);
+ IDirect3DTexture9_Release(texture);
if (!is_autogenmipmap_supported(device, D3DRTYPE_TEXTURE))
{
@@ -1595,110 +1592,92 @@ static void test_D3DXCreateTextureFromFileInMemoryEx(IDirect3DDevice9 *device)
hr = D3DXCreateTextureFromFileInMemoryEx(device, dds_16bit, sizeof(dds_16bit), D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT,
D3DUSAGE_DYNAMIC | D3DUSAGE_AUTOGENMIPMAP, D3DFMT_UNKNOWN, D3DPOOL_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x\n", hr, D3D_OK);
- if (SUCCEEDED(hr)) IDirect3DTexture9_Release(texture);
+ IDirect3DTexture9_Release(texture);
/* Checking for color key format overrides. */
hr = D3DXCreateTextureFromFileInMemoryEx(device, dds_16bit, sizeof(dds_16bit),
D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_DEFAULT,
D3DX_DEFAULT, D3DX_DEFAULT, 0, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x.\n", hr, D3D_OK);
- if (SUCCEEDED(hr))
- {
- IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
- IDirect3DSurface9_GetDesc(surface, &desc);
- ok(desc.Format == D3DFMT_X1R5G5B5, "Returned format %u, expected %u\n", desc.Format, D3DFMT_X1R5G5B5);
- IDirect3DTexture9_Release(texture);
- }
+ IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
+ IDirect3DSurface9_GetDesc(surface, &desc);
+ ok(desc.Format == D3DFMT_X1R5G5B5, "Returned format %u, expected %u.\n", desc.Format, D3DFMT_X1R5G5B5);
+ IDirect3DSurface9_Release(surface);
+ IDirect3DTexture9_Release(texture);
hr = D3DXCreateTextureFromFileInMemoryEx(device, dds_16bit, sizeof(dds_16bit),
D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_DEFAULT,
D3DX_DEFAULT, D3DX_DEFAULT, 0xff000000, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x.\n", hr, D3D_OK);
- if (SUCCEEDED(hr))
- {
- IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
- IDirect3DSurface9_GetDesc(surface, &desc);
- ok(desc.Format == D3DFMT_A1R5G5B5, "Returned format %u, expected %u\n", desc.Format, D3DFMT_A1R5G5B5);
- IDirect3DTexture9_Release(texture);
- }
+ IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
+ IDirect3DSurface9_GetDesc(surface, &desc);
+ ok(desc.Format == D3DFMT_A1R5G5B5, "Returned format %u, expected %u.\n", desc.Format, D3DFMT_A1R5G5B5);
+ IDirect3DSurface9_Release(surface);
+ IDirect3DTexture9_Release(texture);
hr = D3DXCreateTextureFromFileInMemoryEx(device, dds_16bit, sizeof(dds_16bit),
D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_X1R5G5B5, D3DPOOL_DEFAULT,
D3DX_DEFAULT, D3DX_DEFAULT, 0xff000000, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x.\n", hr, D3D_OK);
- if (SUCCEEDED(hr))
- {
- IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
- IDirect3DSurface9_GetDesc(surface, &desc);
- ok(desc.Format == D3DFMT_X1R5G5B5, "Returned format %u, expected %u\n", desc.Format, D3DFMT_X1R5G5B5);
- IDirect3DTexture9_Release(texture);
- }
+ IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
+ IDirect3DSurface9_GetDesc(surface, &desc);
+ ok(desc.Format == D3DFMT_X1R5G5B5, "Returned format %u, expected %u.\n", desc.Format, D3DFMT_X1R5G5B5);
+ IDirect3DSurface9_Release(surface);
+ IDirect3DTexture9_Release(texture);
hr = D3DXCreateTextureFromFileInMemoryEx(device, dds_24bit, sizeof(dds_24bit),
D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_DEFAULT,
D3DX_DEFAULT, D3DX_DEFAULT, 0, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x.\n", hr, D3D_OK);
- if (SUCCEEDED(hr))
- {
- IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
- IDirect3DSurface9_GetDesc(surface, &desc);
- ok(desc.Format == D3DFMT_X8R8G8B8, "Returned format %u, expected %u\n", desc.Format, D3DFMT_X8R8G8B8);
- IDirect3DTexture9_Release(texture);
- }
+ IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
+ IDirect3DSurface9_GetDesc(surface, &desc);
+ ok(desc.Format == D3DFMT_X8R8G8B8, "Returned format %u, expected %u.\n", desc.Format, D3DFMT_X8R8G8B8);
+ IDirect3DSurface9_Release(surface);
+ IDirect3DTexture9_Release(texture);
hr = D3DXCreateTextureFromFileInMemoryEx(device, dds_24bit, sizeof(dds_24bit),
D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_DEFAULT,
D3DX_DEFAULT, D3DX_DEFAULT, 0xff000000, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x.\n", hr, D3D_OK);
- if (SUCCEEDED(hr))
- {
- IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
- IDirect3DSurface9_GetDesc(surface, &desc);
- ok(desc.Format == D3DFMT_A8R8G8B8, "Returned format %u, expected %u\n", desc.Format, D3DFMT_A8R8G8B8);
- IDirect3DTexture9_Release(texture);
- }
+ IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
+ IDirect3DSurface9_GetDesc(surface, &desc);
+ ok(desc.Format == D3DFMT_A8R8G8B8, "Returned format %u, expected %u.\n", desc.Format, D3DFMT_A8R8G8B8);
+ IDirect3DSurface9_Release(surface);
+ IDirect3DTexture9_Release(texture);
hr = D3DXCreateTextureFromFileInMemoryEx(device, dds_24bit, sizeof(dds_24bit),
D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_X8R8G8B8, D3DPOOL_DEFAULT,
D3DX_DEFAULT, D3DX_DEFAULT, 0xff000000, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x.\n", hr, D3D_OK);
- if (SUCCEEDED(hr))
- {
- IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
- IDirect3DSurface9_GetDesc(surface, &desc);
- ok(desc.Format == D3DFMT_X8R8G8B8, "Returned format %u, expected %u\n", desc.Format, D3DFMT_X8R8G8B8);
- IDirect3DTexture9_Release(texture);
- }
+ IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
+ IDirect3DSurface9_GetDesc(surface, &desc);
+ ok(desc.Format == D3DFMT_X8R8G8B8, "Returned format %u, expected %u.\n", desc.Format, D3DFMT_X8R8G8B8);
+ IDirect3DSurface9_Release(surface);
+ IDirect3DTexture9_Release(texture);
hr = D3DXCreateTextureFromFileInMemoryEx(device, png_grayscale, sizeof(png_grayscale),
D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_DEFAULT,
D3DX_DEFAULT, D3DX_DEFAULT, 0, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x.\n", hr, D3D_OK);
- if (SUCCEEDED(hr))
- {
- IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
- IDirect3DSurface9_GetDesc(surface, &desc);
- ok(desc.Format == D3DFMT_L8, "Returned format %u, expected %u\n", desc.Format, D3DFMT_L8);
- IDirect3DTexture9_Release(texture);
- }
+ IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
+ IDirect3DSurface9_GetDesc(surface, &desc);
+ ok(desc.Format == D3DFMT_L8, "Returned format %u, expected %u.\n", desc.Format, D3DFMT_L8);
+ IDirect3DSurface9_Release(surface);
+ IDirect3DTexture9_Release(texture);
hr = D3DXCreateTextureFromFileInMemoryEx(device, png_grayscale, sizeof(png_grayscale),
D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_UNKNOWN, D3DPOOL_DEFAULT,
D3DX_DEFAULT, D3DX_DEFAULT, 0xff000000, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x.\n", hr, D3D_OK);
- if (SUCCEEDED(hr))
- {
- IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
- IDirect3DSurface9_GetDesc(surface, &desc);
- ok(desc.Format == D3DFMT_A8L8, "Returned format %u, expected %u\n", desc.Format, D3DFMT_A8L8);
- IDirect3DTexture9_Release(texture);
- }
+ IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
+ IDirect3DSurface9_GetDesc(surface, &desc);
+ ok(desc.Format == D3DFMT_A8L8, "Returned format %u, expected %u.\n", desc.Format, D3DFMT_A8L8);
+ IDirect3DSurface9_Release(surface);
+ IDirect3DTexture9_Release(texture);
hr = D3DXCreateTextureFromFileInMemoryEx(device, png_grayscale, sizeof(png_grayscale),
D3DX_DEFAULT, D3DX_DEFAULT, D3DX_DEFAULT, 0, D3DFMT_L8, D3DPOOL_DEFAULT,
D3DX_DEFAULT, D3DX_DEFAULT, 0xff000000, NULL, NULL, &texture);
ok(hr == D3D_OK, "D3DXCreateTextureFromFileInMemoryEx returned %#x, expected %#x.\n", hr, D3D_OK);
- if (SUCCEEDED(hr))
- {
- IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
- IDirect3DSurface9_GetDesc(surface, &desc);
- ok(desc.Format == D3DFMT_L8, "Returned format %u, expected %u\n", desc.Format, D3DFMT_L8);
- IDirect3DTexture9_Release(texture);
- }
+ IDirect3DTexture9_GetSurfaceLevel(texture, 0, &surface);
+ IDirect3DSurface9_GetDesc(surface, &desc);
+ ok(desc.Format == D3DFMT_L8, "Returned format %u, expected %u.\n", desc.Format, D3DFMT_L8);
+ IDirect3DSurface9_Release(surface);
+ IDirect3DTexture9_Release(texture);
}
static void test_D3DXCreateCubeTextureFromFileInMemory(IDirect3DDevice9 *device)
@@ -2222,6 +2201,7 @@ START_TEST(texture)
IDirect3DDevice9 *device;
D3DPRESENT_PARAMETERS d3dpp;
HRESULT hr;
+ ULONG ref;
if (!(wnd = CreateWindowA("static", "d3dx9_test", WS_OVERLAPPEDWINDOW, 0, 0,
640, 480, NULL, NULL, NULL, NULL)))
@@ -2274,7 +2254,9 @@ START_TEST(texture)
test_D3DXCreateVolumeTextureFromFileInMemory(device);
test_D3DXSaveTextureToFileInMemory(device);
- IDirect3DDevice9_Release(device);
+ ref = IDirect3DDevice9_Release(device);
+ ok(!ref, "Device has %u references left.\n", ref);
+
IDirect3D9_Release(d3d);
DestroyWindow(wnd);
--
2.13.6
More information about the wine-devel
mailing list