Author: khornicek
Date: Fri Feb 17 13:13:36 2017
New Revision: 73812
URL: http://svn.reactos.org/svn/reactos?rev=73812&view=rev
Log:
[WIN32K]
- The pattern bitmap can get deleted during the GDI cleanup for process before the brush itself.
- Gets rid of some of those pesky "GreDeleteObject: Trying to delete invalid object" debug prints.
Modified:
trunk/reactos/win32ss/gdi/ntgdi/brush.cpp
Modified: trunk/reactos/win32ss/gdi/ntgdi/brush.cpp
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/ntgdi/brush.cp…
==============================================================================
--- trunk/reactos/win32ss/gdi/ntgdi/brush.cpp [iso-8859-1] (original)
+++ trunk/reactos/win32ss/gdi/ntgdi/brush.cpp [iso-8859-1] Fri Feb 17 13:13:36 2017
@@ -62,8 +62,8 @@
GdiPoolFree(GetBrushAttrPool(), this->pBrushAttr);
}
- /* Delete the pattern bitmap */
- if (this->hbmPattern != NULL)
+ /* Delete the pattern bitmap (may have already been deleted during gdi cleanup) */
+ if (this->hbmPattern != NULL && GreIsHandleValid(this->hbmPattern))
{
GreSetBitmapOwner(this->hbmPattern, BASEOBJECT::OWNER::POWNED);
GreDeleteObject(this->hbmPattern);