Alexandre Julliard : user32: Don't use a static dc for icon blitting.

Alexandre Julliard julliard at winehq.org
Mon Oct 5 09:54:30 CDT 2009


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

Author: Alexandre Julliard <julliard at winehq.org>
Date:   Mon Oct  5 15:18:10 2009 +0200

user32: Don't use a static dc for icon blitting.

---

 dlls/user32/cursoricon.c |    6 ++----
 1 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/dlls/user32/cursoricon.c b/dlls/user32/cursoricon.c
index a74b79d..fca04ce 100644
--- a/dlls/user32/cursoricon.c
+++ b/dlls/user32/cursoricon.c
@@ -674,10 +674,7 @@ static BOOL stretch_blt_icon(HBITMAP hDest, BITMAPINFO *pDestInfo, BITMAPINFO *p
 {
     HBITMAP hOld;
     BOOL res = FALSE;
-    static HDC hdcMem = NULL;
-
-    if (!hdcMem)
-        hdcMem = CreateCompatibleDC(screen_dc);
+    HDC hdcMem = CreateCompatibleDC(screen_dc);
 
     if (hdcMem)
     {
@@ -687,6 +684,7 @@ static BOOL stretch_blt_icon(HBITMAP hDest, BITMAPINFO *pDestInfo, BITMAPINFO *p
                             0, 0, pSrcInfo->bmiHeader.biWidth, pSrcInfo->bmiHeader.biHeight,
                             pSrcBits, pSrcInfo, DIB_RGB_COLORS, SRCCOPY);
         SelectObject(hdcMem, hOld);
+        DeleteDC( hdcMem );
     }
 
     return res;




More information about the wine-cvs mailing list