diff --git a/reactos/subsystems/win32/win32k/objects/bitblt.c b/reactos/subsystems/win32/win32k/objects/bitblt.c index b13f208ddaa..27df4e10240 100644 --- a/reactos/subsystems/win32/win32k/objects/bitblt.c +++ b/reactos/subsystems/win32/win32k/objects/bitblt.c @@ -1069,18 +1069,24 @@ NtGdiPatBlt( INT Height, DWORD ROP) { + /* FIXME PatBlt code is wrong, we using NtGdiBitBlt to workaround this bug for now, like random crash, and so on */ +#if 0 PGDIBRUSHOBJ BrushObj; DC *dc; PDC_ATTR Dc_Attr; - BOOL UsesSource = ROP3_USES_SOURCE(ROP); BOOL ret; +#endif + BOOL UsesSource = ROP3_USES_SOURCE(ROP); if (UsesSource) { /* in this case we call on GdiMaskBlt */ return NtGdiMaskBlt(hDC, XLeft, YLeft, Width, Height, 0,0,0,0,0,0,ROP,0); } + return NtGdiBitBlt( hDC, XLeft, YLeft, Width, Height, 0, 0, 0, ROP, 0, 0); + +#if 0 dc = DC_LockDc(hDC); if (dc == NULL) { @@ -1117,6 +1123,7 @@ NtGdiPatBlt( DC_UnlockDc(dc); return ret; +#endif } BOOL STDCALL