Index: subsystems/win32/win32k/dib/dibXXbpp.c =================================================================== --- subsystems/win32/win32k/dib/dibXXbpp.c (revision 40359) +++ subsystems/win32/win32k/dib/dibXXbpp.c (working copy) @@ -50,7 +50,7 @@ PFN_DIB_GetPixel fnPattern_GetPixel = NULL; PFN_DIB_GetPixel fnMask_GetPixel = NULL; - ULONG PatternX = 0, PatternY = 0; + LONG PatternX = 0, PatternY = 0; BOOL UsesSource = ROP4_USES_SOURCE(ROP); BOOL UsesPattern = ROP4_USES_PATTERN(ROP); Index: subsystems/win32/win32k/eng/bitblt.c =================================================================== --- subsystems/win32/win32k/eng/bitblt.c (revision 40359) +++ subsystems/win32/win32k/eng/bitblt.c (working copy) @@ -938,8 +938,8 @@ } if (OutputRect.bottom < OutputRect.top) { - OutputRect.left = prclDest->right; - OutputRect.right = prclDest->left; + OutputRect.top = prclDest->bottom; + OutputRect.bottom = prclDest->top; } InputRect = *prclSrc; @@ -1198,8 +1198,8 @@ } InputRect = *SourceRect; - if (InputClippedRect.right < InputClippedRect.left || - InputClippedRect.bottom < InputClippedRect.top) + if (InputRect.right < InputRect.left || + InputRect.bottom < InputRect.top) { /* Everything clipped away, nothing to do */ return TRUE;