On 2016-12-22 11:39, jimtabor@svn.reactos.org wrote:
+#ifndef _WIN32K_ ///// Fix CORE-2201.
- if (!(flags & DT_NOCLIP) )
- {
int hasClip;hrgn = CreateRectRgn(0,0,0,0);if (hrgn){hasClip = GetClipRgn(hdc, hrgn);// If the region to be retrieved is NULL, the return value is 0.if (hasClip != 1){DeleteObject(hrgn);hrgn = NULL;}IntersectClipRect(hdc, rect->left, rect->top, rect->right, rect->bottom);}- }
+#else
- if (!(flags & DT_NOCLIP) )
- {
int hasClip;hrgn = NtGdiCreateRectRgn(0,0,0,0);if (hrgn){hasClip = NtGdiGetRandomRgn(hdc, hrgn, CLIPRGN);if (hasClip != 1){GreDeleteObject(hrgn);hrgn = NULL;}NtGdiIntersectClipRect(hdc, rect->left, rect->top, rect->right, rect->bottom);}- }
+#endif /////
Any particular reason not to simply do the NtGdi call in both user and kernel? Looks like they should be doing the exact same thing.