[WIN32K]
authorKamil Hornicek <kamil.hornicek@reactos.org>
Mon, 20 Feb 2017 10:10:37 +0000 (10:10 +0000)
committerKamil Hornicek <kamil.hornicek@reactos.org>
Mon, 20 Feb 2017 10:10:37 +0000 (10:10 +0000)
- Don't try to delete the pattern bitmap in UserInitialize.
- Set the correct owner before deleting the update region in co_UserFreeWindow.
- Fixes some "Trying to delete global object" debug prints.

svn path=/trunk/; revision=73855

reactos/win32ss/user/ntuser/ntuser.c
reactos/win32ss/user/ntuser/window.c

index 275479c..d86e563 100644 (file)
@@ -154,9 +154,8 @@ UserInitialize(VOID)
         if (hPattern55AABitmap == NULL)
             return STATUS_INSUFFICIENT_RESOURCES;
 
-        //NT_VERIFY(GreSetBitmapOwner(hPattern55AABitmap, GDI_OBJ_HMGR_PUBLIC));
         gpsi->hbrGray = IntGdiCreatePatternBrush(hPattern55AABitmap);
-        GreDeleteObject(hPattern55AABitmap);
+
         if (gpsi->hbrGray == NULL)
             return STATUS_INSUFFICIENT_RESOURCES;
     }
index 7b7fb72..861b266 100644 (file)
@@ -602,6 +602,7 @@ LRESULT co_UserFreeWindow(PWND Window,
       MsqDecPaintCountQueue(Window->head.pti);
       if (Window->hrgnUpdate > HRGN_WINDOW && GreIsHandleValid(Window->hrgnUpdate))
       {
+         IntGdiSetRegionOwner(Window->hrgnUpdate, GDI_OBJ_HMGR_POWNED);
          GreDeleteObject(Window->hrgnUpdate);
       }
       Window->hrgnUpdate = NULL;