Author: jimtabor
Date: Sat Sep 6 17:47:45 2014
New Revision: 64054
URL:
http://svn.reactos.org/svn/reactos?rev=64054&view=rev
Log:
[Win32k]
- Apply band-aid patch from CORE-8506. Problem still persists, how did a bad region get
plugged into the DCE structure?
Modified:
trunk/reactos/win32ss/user/ntuser/windc.c
Modified: trunk/reactos/win32ss/user/ntuser/windc.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/user/ntuser/windc.…
==============================================================================
--- trunk/reactos/win32ss/user/ntuser/windc.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/user/ntuser/windc.c [iso-8859-1] Sat Sep 6 17:47:45 2014
@@ -215,7 +215,7 @@
PWND Parent;
Parent = Window->spwndParent;
- if(!Parent)
+ if (!Parent)
{
RgnVisible = NULL;
goto noparent;
@@ -252,15 +252,19 @@
noparent:
if (Flags & DCX_INTERSECTRGN)
{
- if(Dce->hrgnClip != NULL)
- {
- PREGION RgnClip = REGION_LockRgn(Dce->hrgnClip);
+ PREGION RgnClip = NULL;
+
+ if (Dce->hrgnClip != NULL)
+ RgnClip = REGION_LockRgn(Dce->hrgnClip);
+
+ if (RgnClip)
+ {
IntGdiCombineRgn(RgnVisible, RgnVisible, RgnClip, RGN_AND);
REGION_UnlockRgn(RgnClip);
}
else
{
- if(RgnVisible != NULL)
+ if (RgnVisible != NULL)
{
REGION_Delete(RgnVisible);
}