ddrawex/tests: Don't crash on some Win98/WinMe boxes.
authorPaul Vriens <Paul.Vriens.Wine@gmail.com>
Tue, 30 Mar 2010 17:44:59 +0000 (19:44 +0200)
committerAlexandre Julliard <julliard@winehq.org>
Wed, 31 Mar 2010 09:35:57 +0000 (11:35 +0200)
dlls/ddrawex/tests/surface.c

index d5a26b5907cbedb6f959381a01b3da157bb03b93..d5d347bfe132628080e4ba092eacea5adf34f717 100644 (file)
@@ -261,6 +261,11 @@ static void test_surface_from_dc3(void)
     ddsd.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
 
     hr = IDirectDraw3_CreateSurface(dd3, &ddsd, &surf1, NULL);
+    if (hr == DDERR_UNSUPPORTEDMODE) {
+        win_skip("Unsupported mode\n");
+        IDirectDraw3_Release(dd3);
+        return;
+    }
     ok(SUCCEEDED(hr), "CreateSurface failed, hr %#x.\n", hr);
 
     hr = IDirectDrawSurface3_QueryInterface(surf1, &IID_IDirectDrawSurface, (void **)&surf3);
@@ -323,6 +328,11 @@ static void test_surface_from_dc4(void)
     ddsd2.ddsCaps.dwCaps = DDSCAPS_OFFSCREENPLAIN;
 
     hr = IDirectDraw4_CreateSurface(dd4, &ddsd2, &surf4, NULL);
+    if (hr == DDERR_UNSUPPORTEDMODE) {
+        win_skip("Unsupported mode\n");
+        IDirectDraw3_Release(dd4);
+        return;
+    }
     ok(SUCCEEDED(hr), "CreateSurface failed, hr %#x.\n", hr);
 
     hr = IDirectDrawSurface4_QueryInterface(surf4, &IID_IDirectDrawSurface, (void **)&surf1);