Henri Verbeet : d3d9/tests: Use create_device() in test_scissor_size().
Alexandre Julliard
julliard at wine.codeweavers.com
Thu Oct 9 13:14:33 CDT 2014
Module: wine
Branch: master
Commit: 1bec6ab0bc0c16f3b580165f7cb337e9510cce3a
URL: http://source.winehq.org/git/wine.git/?a=commit;h=1bec6ab0bc0c16f3b580165f7cb337e9510cce3a
Author: Henri Verbeet <hverbeet at codeweavers.com>
Date: Thu Oct 9 11:50:49 2014 +0200
d3d9/tests: Use create_device() in test_scissor_size().
---
dlls/d3d9/tests/device.c | 34 ++++++++--------------------------
1 file changed, 8 insertions(+), 26 deletions(-)
diff --git a/dlls/d3d9/tests/device.c b/dlls/d3d9/tests/device.c
index 16a9177..02c8227 100644
--- a/dlls/d3d9/tests/device.c
+++ b/dlls/d3d9/tests/device.c
@@ -2938,6 +2938,7 @@ static void test_display_formats(void)
static void test_scissor_size(void)
{
+ struct device_desc device_desc;
IDirect3D9 *d3d9_ptr;
unsigned int i;
static struct {
@@ -2954,7 +2955,6 @@ static void test_scissor_size(void)
for(i=0; i<sizeof(scts)/sizeof(scts[0]); i++) {
IDirect3DDevice9 *device_ptr = 0;
- D3DPRESENT_PARAMETERS present_parameters;
HRESULT hr;
HWND hwnd = 0;
RECT scissorrect;
@@ -2968,30 +2968,14 @@ static void test_scissor_size(void)
scts[i].backy = screen_height;
}
- ZeroMemory(&present_parameters, sizeof(present_parameters));
- present_parameters.Windowed = scts[i].window;
- present_parameters.hDeviceWindow = hwnd;
- present_parameters.SwapEffect = D3DSWAPEFFECT_DISCARD;
- present_parameters.BackBufferWidth = scts[i].backx;
- present_parameters.BackBufferHeight = scts[i].backy;
- present_parameters.BackBufferFormat = D3DFMT_A8R8G8B8;
- present_parameters.EnableAutoDepthStencil = TRUE;
- present_parameters.AutoDepthStencilFormat = D3DFMT_D24S8;
-
- hr = IDirect3D9_CreateDevice(d3d9_ptr, D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, present_parameters.hDeviceWindow, D3DCREATE_HARDWARE_VERTEXPROCESSING, &present_parameters, &device_ptr);
- if(FAILED(hr)) {
- present_parameters.AutoDepthStencilFormat = D3DFMT_D16;
- hr = IDirect3D9_CreateDevice(d3d9_ptr, D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, present_parameters.hDeviceWindow, D3DCREATE_HARDWARE_VERTEXPROCESSING, &present_parameters, &device_ptr);
- if(FAILED(hr)) {
- hr = IDirect3D9_CreateDevice(d3d9_ptr, D3DADAPTER_DEFAULT, D3DDEVTYPE_HAL, present_parameters.hDeviceWindow, D3DCREATE_SOFTWARE_VERTEXPROCESSING, &present_parameters, &device_ptr);
- }
- }
- ok(hr == D3D_OK || hr == D3DERR_NOTAVAILABLE, "IDirect3D_CreateDevice returned: %08x\n", hr);
-
- if (!device_ptr)
+ device_desc.device_window = hwnd;
+ device_desc.width = scts[i].backx;
+ device_desc.height = scts[i].backy;
+ device_desc.windowed = scts[i].window;
+ if (!(device_ptr = create_device(d3d9_ptr, hwnd, &device_desc)))
{
+ skip("Failed to create a 3D device, skipping test.\n");
DestroyWindow(hwnd);
- skip("Creating the device failed\n");
goto err_out;
}
@@ -3001,9 +2985,7 @@ static void test_scissor_size(void)
ok(scissorrect.right == scts[i].backx && scissorrect.bottom == scts[i].backy && scissorrect.top == 0 && scissorrect.left == 0, "Scissorrect missmatch (%d, %d) should be (%d, %d)\n", scissorrect.right, scissorrect.bottom, scts[i].backx, scts[i].backy);
/* check the scissorrect values after a reset */
- present_parameters.BackBufferWidth = screen_width;
- present_parameters.BackBufferHeight = screen_height;
- hr = IDirect3DDevice9_Reset(device_ptr, &present_parameters);
+ hr = reset_device(device_ptr, hwnd, scts[i].window);
ok(hr == D3D_OK, "IDirect3DDevice9_Reset failed with %08x\n", hr);
hr = IDirect3DDevice9_TestCooperativeLevel(device_ptr);
ok(hr == D3D_OK, "IDirect3DDevice9_TestCooperativeLevel after a successful reset returned %#x\n", hr);
More information about the wine-cvs
mailing list