From 2cea7b7c463172041ac8a1e7b8d466a8b5d0e667 Mon Sep 17 00:00:00 2001 From: Hartmut Birr Date: Sat, 3 Sep 2005 17:40:33 +0000 Subject: [PATCH] Set the ownership before locking the bitmap in EngCreateDeviceSurface, because GDIOBJ_SetOwnership runs in a dead lock if the object is already locked by the same process. This may fix bug 747. svn path=/trunk/; revision=17621 --- reactos/subsys/win32k/eng/surface.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/reactos/subsys/win32k/eng/surface.c b/reactos/subsys/win32k/eng/surface.c index 72945c21b7b..c1a25896a19 100644 --- a/reactos/subsys/win32k/eng/surface.c +++ b/reactos/subsys/win32k/eng/surface.c @@ -394,6 +394,8 @@ EngCreateDeviceSurface(IN DHSURF dhsurf, if (NewSurface == NULL) return 0; + GDIOBJ_SetOwnership(NewSurface, NULL); + BitmapObj = BITMAPOBJ_LockBitmap(NewSurface); if (! BITMAPOBJ_InitBitsLock(BitmapObj)) { @@ -403,8 +405,6 @@ EngCreateDeviceSurface(IN DHSURF dhsurf, } SurfObj = &BitmapObj->SurfObj; - GDIOBJ_SetOwnership(NewSurface, NULL); - SurfObj->dhsurf = dhsurf; SurfObj->hsurf = NewSurface; SurfObj->sizlBitmap = Size;