Huw Davies : ddraw/tests: Skip tests if we can't create a primary surface.
Alexandre Julliard
julliard at winehq.org
Fri Dec 5 07:43:01 CST 2008
Module: wine
Branch: master
Commit: ebb31dbbb7fef3bf628c13edbf85a4ad0fc59cbd
URL: http://source.winehq.org/git/wine.git/?a=commit;h=ebb31dbbb7fef3bf628c13edbf85a4ad0fc59cbd
Author: Huw Davies <huw at codeweavers.com>
Date: Fri Dec 5 12:22:17 2008 +0000
ddraw/tests: Skip tests if we can't create a primary surface.
---
dlls/ddraw/tests/dsurface.c | 22 ++++++++++++++++++++++
dlls/ddraw/tests/visual.c | 3 +--
2 files changed, 23 insertions(+), 2 deletions(-)
diff --git a/dlls/ddraw/tests/dsurface.c b/dlls/ddraw/tests/dsurface.c
index d4626ad..80cf9b1 100644
--- a/dlls/ddraw/tests/dsurface.c
+++ b/dlls/ddraw/tests/dsurface.c
@@ -2748,6 +2748,22 @@ static void SurfaceCapsTest(void)
}
}
+static BOOL can_create_primary_surface(void)
+{
+ DDSURFACEDESC ddsd;
+ IDirectDrawSurface *surface;
+ HRESULT hr;
+
+ memset(&ddsd, 0, sizeof(ddsd));
+ ddsd.dwSize = sizeof(ddsd);
+ ddsd.dwFlags = DDSD_CAPS;
+ ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE;
+ hr = IDirectDraw_CreateSurface(lpDD, &ddsd, &surface, NULL);
+ if(FAILED(hr)) return FALSE;
+ IDirectDrawSurface_Release(surface);
+ return TRUE;
+}
+
START_TEST(dsurface)
{
HRESULT ret;
@@ -2765,6 +2781,12 @@ START_TEST(dsurface)
}
IDirectDraw_Release(dd4);
+ if(!can_create_primary_surface())
+ {
+ skip("Unable to create primary surface\n");
+ return;
+ }
+
MipMapCreationTest();
SrcColorKey32BlitTest();
QueryInterface();
diff --git a/dlls/ddraw/tests/visual.c b/dlls/ddraw/tests/visual.c
index 12f11c9..185cc33 100644
--- a/dlls/ddraw/tests/visual.c
+++ b/dlls/ddraw/tests/visual.c
@@ -89,8 +89,7 @@ static BOOL createObjects(void)
ddsd.ddsCaps.dwCaps = DDSCAPS_PRIMARYSURFACE | DDSCAPS_3DDEVICE;
ddsd.dwBackBufferCount = 1;
hr = IDirectDraw7_CreateSurface(DirectDraw, &ddsd, &Surface, NULL);
- ok(hr==DD_OK, "CreateSurface returned: %08x\n", hr);
- if(!Surface) goto err;
+ if(FAILED(hr)) goto err;
hr = IDirect3D7_CreateDevice(Direct3D, &IID_IDirect3DTnLHalDevice, Surface, &Direct3DDevice);
if(FAILED(hr))
More information about the wine-cvs
mailing list