ddraw/tests: Better clean up when skipping the primary palette tests.

Francois Gouget fgouget at codeweavers.com
Mon Feb 17 10:44:56 CST 2014


Some graphics cards (e.g. Intel HD4000 in Windows 8) don't support 8bpp modes. So skip the palette tests on these cards.
---
 dlls/ddraw/tests/ddraw1.c | 3 ++-
 dlls/ddraw/tests/ddraw2.c | 3 ++-
 dlls/ddraw/tests/ddraw4.c | 5 +++--
 3 files changed, 7 insertions(+), 4 deletions(-)

diff --git a/dlls/ddraw/tests/ddraw1.c b/dlls/ddraw/tests/ddraw1.c
index 7d97ec6..ba7589b 100644
--- a/dlls/ddraw/tests/ddraw1.c
+++ b/dlls/ddraw/tests/ddraw1.c
@@ -4080,7 +4080,8 @@ static void test_primary_palette(void)
     hr = IDirectDraw_SetDisplayMode(ddraw, 640, 480, 8);
     if (hr == E_NOTIMPL)
     {
-        win_skip("8bpp display mode is not supported\n");
+        win_skip("changing display mode is not supported (8bpp)\n");
+        IDirectDraw_Release(ddraw);
         DestroyWindow(window);
         return;
     }
diff --git a/dlls/ddraw/tests/ddraw2.c b/dlls/ddraw/tests/ddraw2.c
index ea9fc5c..f46c515 100644
--- a/dlls/ddraw/tests/ddraw2.c
+++ b/dlls/ddraw/tests/ddraw2.c
@@ -5177,7 +5177,8 @@ static void test_primary_palette(void)
     hr = IDirectDraw2_SetDisplayMode(ddraw, 640, 480, 8, 0, 0);
     if (hr == E_NOTIMPL)
     {
-        win_skip("8bpp display mode is not supported\n");
+        win_skip("changing display mode is not supported (8bpp)\n");
+        IDirectDraw2_Release(ddraw);
         DestroyWindow(window);
         return;
     }
diff --git a/dlls/ddraw/tests/ddraw4.c b/dlls/ddraw/tests/ddraw4.c
index a189dcb..3eb258e 100644
--- a/dlls/ddraw/tests/ddraw4.c
+++ b/dlls/ddraw/tests/ddraw4.c
@@ -5771,13 +5771,14 @@ static void test_primary_palette(void)
     window = CreateWindowA("static", "ddraw_test", WS_OVERLAPPEDWINDOW,
             0, 0, 640, 480, 0, 0, 0, 0);
     hr = IDirectDraw4_SetDisplayMode(ddraw, 640, 480, 8, 0, 0);
-    ok(SUCCEEDED(hr), "Failed to set display mode, hr %#x.\n", hr);
     if (hr == E_NOTIMPL)
     {
-        win_skip("8bpp display mode is not supported\n");
+        win_skip("changing display mode is not supported (8bpp)\n");
+        IDirectDraw4_Release(ddraw);
         DestroyWindow(window);
         return;
     }
+    ok(SUCCEEDED(hr), "Failed to set display mode, hr %#x.\n", hr);
     hr = IDirectDraw4_SetCooperativeLevel(ddraw, window, DDSCL_EXCLUSIVE | DDSCL_FULLSCREEN);
     ok(SUCCEEDED(hr), "Failed to set cooperative level, hr %#x.\n", hr);
 
-- 
1.8.5.3




More information about the wine-patches mailing list