Henri Verbeet : ddraw/tests: Properly cleanup on failed device creation in a couple of places.

Alexandre Julliard julliard at winehq.org
Wed May 23 13:22:54 CDT 2012


Module: wine
Branch: master
Commit: fa90a256d7f8ae2cdf5dd53acf1ae7668626241f
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=fa90a256d7f8ae2cdf5dd53acf1ae7668626241f

Author: Henri Verbeet <hverbeet at codeweavers.com>
Date:   Wed May 23 18:14:31 2012 +0200

ddraw/tests: Properly cleanup on failed device creation in a couple of places.

---

 dlls/ddraw/tests/ddraw1.c |    4 ++++
 dlls/ddraw/tests/ddraw2.c |    4 ++++
 2 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/dlls/ddraw/tests/ddraw1.c b/dlls/ddraw/tests/ddraw1.c
index 158f92d..a3f548c 100644
--- a/dlls/ddraw/tests/ddraw1.c
+++ b/dlls/ddraw/tests/ddraw1.c
@@ -1158,6 +1158,7 @@ static void test_ck_rgba(void)
     if (!(device = create_device(ddraw, window, DDSCL_NORMAL)))
     {
         skip("Failed to create D3D device, skipping test.\n");
+        IDirectDraw_Release(ddraw);
         DestroyWindow(window);
         return;
     }
@@ -1390,6 +1391,7 @@ static void test_surface_qi(void)
     if (!(ddraw = create_ddraw()))
     {
         skip("Failed to create a ddraw object, skipping test.\n");
+        DestroyWindow(window);
         return;
     }
     /* Try to create a D3D device to see if the ddraw implementation supports
@@ -1398,6 +1400,7 @@ static void test_surface_qi(void)
     if (!(device = create_device(ddraw, window, DDSCL_NORMAL)))
     {
         skip("Failed to create D3D device, skipping test.\n");
+        IDirectDraw_Release(ddraw);
         DestroyWindow(window);
         return;
     }
@@ -1483,6 +1486,7 @@ static void test_device_qi(void)
     if (!(device = create_device(ddraw, window, DDSCL_NORMAL)))
     {
         skip("Failed to create D3D device, skipping test.\n");
+        IDirectDraw_Release(ddraw);
         DestroyWindow(window);
         return;
     }
diff --git a/dlls/ddraw/tests/ddraw2.c b/dlls/ddraw/tests/ddraw2.c
index 45a5cfd..02d0d6b 100644
--- a/dlls/ddraw/tests/ddraw2.c
+++ b/dlls/ddraw/tests/ddraw2.c
@@ -1373,6 +1373,7 @@ static void test_ck_rgba(void)
     if (!(device = create_device(ddraw, window, DDSCL_NORMAL)))
     {
         skip("Failed to create D3D device, skipping test.\n");
+        IDirectDraw2_Release(ddraw);
         DestroyWindow(window);
         return;
     }
@@ -1586,6 +1587,7 @@ static void test_surface_qi(void)
     if (!(ddraw = create_ddraw()))
     {
         skip("Failed to create a ddraw object, skipping test.\n");
+        DestroyWindow(window);
         return;
     }
     /* Try to create a D3D device to see if the ddraw implementation supports
@@ -1594,6 +1596,7 @@ static void test_surface_qi(void)
     if (!(device = create_device(ddraw, window, DDSCL_NORMAL)))
     {
         skip("Failed to create D3D device, skipping test.\n");
+        IDirectDraw2_Release(ddraw);
         DestroyWindow(window);
         return;
     }
@@ -1678,6 +1681,7 @@ static void test_device_qi(void)
     if (!(device = create_device(ddraw, window, DDSCL_NORMAL)))
     {
         skip("Failed to create D3D device, skipping test.\n");
+        IDirectDraw2_Release(ddraw);
         DestroyWindow(window);
         return;
     }




More information about the wine-cvs mailing list