Module: wine Branch: master Commit: 31576d408eba55382306099d6eb52df4622f65da URL: http://source.winehq.org/git/wine.git/?a=commit;h=31576d408eba55382306099d6e...
Author: Alexandre Julliard julliard@winehq.org Date: Tue Feb 5 18:26:25 2008 +0100
gdi32: Avoid locking in BITMAP_CopyBitmap.
---
dlls/gdi32/bitmap.c | 8 +------- 1 files changed, 1 insertions(+), 7 deletions(-)
diff --git a/dlls/gdi32/bitmap.c b/dlls/gdi32/bitmap.c index a873457..c468920 100644 --- a/dlls/gdi32/bitmap.c +++ b/dlls/gdi32/bitmap.c @@ -510,14 +510,10 @@ LONG WINAPI SetBitmapBits( */ HBITMAP BITMAP_CopyBitmap(HBITMAP hbitmap) { - BITMAPOBJ *bmp = (BITMAPOBJ *) GDI_GetObjPtr( hbitmap, BITMAP_MAGIC ); HBITMAP res = 0; BITMAP bm;
- if(!bmp) return 0; - - bm = bmp->bitmap; - bm.bmBits = NULL; + if (!GetObjectW( hbitmap, sizeof(bm), &bm )) return 0; res = CreateBitmapIndirect(&bm);
if(res) { @@ -527,8 +523,6 @@ HBITMAP BITMAP_CopyBitmap(HBITMAP hbitmap) SetBitmapBits (res, bm.bmWidthBytes * bm.bmHeight, buf); HeapFree( GetProcessHeap(), 0, buf ); } - - GDI_ReleaseObj( hbitmap ); return res; }