Alexandre Julliard : gdi32: Avoid locking in BITMAP_CopyBitmap.
Alexandre Julliard
julliard at winehq.org
Wed Feb 6 07:27:45 CST 2008
Module: wine
Branch: master
Commit: 31576d408eba55382306099d6eb52df4622f65da
URL: http://source.winehq.org/git/wine.git/?a=commit;h=31576d408eba55382306099d6eb52df4622f65da
Author: Alexandre Julliard <julliard at 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;
}
More information about the wine-cvs
mailing list