Dmitry Timoshkov : gdi32: Fix some DC leaks in gdi32 bitmap tests.

Alexandre Julliard julliard at winehq.org
Wed Apr 7 11:56:09 CDT 2010


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

Author: Dmitry Timoshkov <dmitry at codeweavers.com>
Date:   Wed Apr  7 12:44:39 2010 +0900

gdi32: Fix some DC leaks in gdi32 bitmap tests.

---

 dlls/gdi32/tests/bitmap.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/dlls/gdi32/tests/bitmap.c b/dlls/gdi32/tests/bitmap.c
index f6a4434..df658ff 100644
--- a/dlls/gdi32/tests/bitmap.c
+++ b/dlls/gdi32/tests/bitmap.c
@@ -411,7 +411,7 @@ static void test_dib_bits_access( HBITMAP hdib, void *bits )
     char bmibuf[sizeof(BITMAPINFO) + 256 * sizeof(RGBQUAD)];
     DWORD data[256];
     BITMAPINFO *pbmi = (BITMAPINFO *)bmibuf;
-    HDC hdc = GetDC(0);
+    HDC hdc;
     char filename[MAX_PATH];
     HANDLE file;
     DWORD written;
@@ -435,11 +435,15 @@ static void test_dib_bits_access( HBITMAP hdib, void *bits )
     pbmi->bmiHeader.biPlanes = 1;
     pbmi->bmiHeader.biCompression = BI_RGB;
 
+    hdc = GetDC(0);
+
     ret = SetDIBits( hdc, hdib, 0, 16, data, pbmi, DIB_RGB_COLORS );
     ok(ret == 16 ||
        broken(ret == 0), /* win9x */
        "SetDIBits failed: expected 16 got %d\n", ret);
 
+    ReleaseDC(0, hdc);
+
     ok(VirtualQuery(bits, &info, sizeof(info)) == sizeof(info),
         "VirtualQuery failed\n");
     ok(info.BaseAddress == bits, "%p != %p\n", info.BaseAddress, bits);
@@ -864,8 +868,8 @@ static void test_dibsections(void)
     DeleteObject(hdib);
     DeleteObject(hpal);
 
-
     DeleteDC(hdcmem);
+    DeleteDC(hdcmem2);
     ReleaseDC(0, hdc);
 }
 




More information about the wine-cvs mailing list