- Fix the select of the clip region for a window. Apologies to Rafal Harabien select works like select, also don't
assume the original author is always right.



svn path=/trunk/; revision=50961
This commit is contained in:
James Tabor 2011-03-03 13:59:17 +00:00
parent dba4ecb162
commit 1fd7d93b5d

View file

@ -4052,7 +4052,7 @@ NtUserSetWindowRgn(
}
else
{
hrgnCopy = IntSysCreateRectRgnIndirect(&Window->rcWindow); //HRGN_WINDOW;
hrgnCopy = NULL;
}
if (Window->hrgnClip)
@ -4061,12 +4061,14 @@ NtUserSetWindowRgn(
GreDeleteObject(Window->hrgnClip);
}
if (Window->fnid != FNID_DESKTOP)
NtGdiOffsetRgn(hrgnCopy, Window->rcWindow.left, Window->rcWindow.top);
/* Set public ownership */
IntGdiSetRegionOwner(hrgnCopy, GDI_OBJ_HMGR_PUBLIC);
if (hrgnCopy)
{
if (Window->fnid != FNID_DESKTOP)
NtGdiOffsetRgn(hrgnCopy, Window->rcWindow.left, Window->rcWindow.top);
/* Set public ownership */
IntGdiSetRegionOwner(hrgnCopy, GDI_OBJ_HMGR_PUBLIC);
}
Window->hrgnClip = hrgnCopy;
Ret = co_WinPosSetWindowPos(Window, HWND_TOP, 0, 0, 0, 0, bRedraw ? flags : (flags|SWP_NOREDRAW) );