X-Git-Url: https://git.reactos.org/?p=reactos.git;a=blobdiff_plain;f=reactos%2Fsubsystems%2Fwin32%2Fwin32k%2Feng%2Fbitblt.c;h=e6dd4970d5c6adf659a018ae1844ed7ed063db1c;hp=b74e890cfd0fd2761e4b1a24eab4dce712d5c72f;hb=684c3d3791b92777e7de259fbc6691161f6808c7;hpb=f5258132f4eef483cce5491037d4383f958ce1a2 diff --git a/reactos/subsystems/win32/win32k/eng/bitblt.c b/reactos/subsystems/win32/win32k/eng/bitblt.c index b74e890cfd0..e6dd4970d5c 100644 --- a/reactos/subsystems/win32/win32k/eng/bitblt.c +++ b/reactos/subsystems/win32/win32k/eng/bitblt.c @@ -522,7 +522,7 @@ EngBitBlt(SURFOBJ *DestObj, } BOOL APIENTRY -IntEngBitBltEx( +IntEngBitBlt( SURFOBJ *psoTrg, SURFOBJ *psoSrc, SURFOBJ *psoMask, @@ -533,8 +533,7 @@ IntEngBitBltEx( POINTL *pptlMask, BRUSHOBJ *pbo, POINTL *pptlBrush, - ROP4 rop4, - BOOL bRemoveMouse) + ROP4 rop4) { SURFACE *psurfTrg; SURFACE *psurfSrc = NULL; @@ -583,28 +582,11 @@ IntEngBitBltEx( psurfSrc = NULL; } - if (bRemoveMouse) - { - SURFACE_LockBitmapBits(psurfTrg); - - if (psoSrc) - { - if (psoSrc != psoTrg) - { - SURFACE_LockBitmapBits(psurfSrc); - } - MouseSafetyOnDrawStart(psoSrc, rclSrc.left, rclSrc.top, - rclSrc.right, rclSrc.bottom); - } - MouseSafetyOnDrawStart(psoTrg, rclClipped.left, rclClipped.top, - rclClipped.right, rclClipped.bottom); - } - /* Is the target surface device managed? */ - if (psurfTrg->flHooks & HOOK_BITBLT) + if (psurfTrg->flags & HOOK_BITBLT) { /* Is the source a different device managed surface? */ - if (psoSrc && psoSrc->hdev != psoTrg->hdev && psurfSrc->flHooks & HOOK_BITBLT) + if (psoSrc && psoSrc->hdev != psoTrg->hdev && psurfSrc->flags & HOOK_BITBLT) { DPRINT1("Need to copy to standard bitmap format!\n"); ASSERT(FALSE); @@ -614,7 +596,7 @@ IntEngBitBltEx( } /* Is the source surface device managed? */ - else if (psoSrc && psurfSrc->flHooks & HOOK_BITBLT) + else if (psoSrc && psurfSrc->flags & HOOK_BITBLT) { pfnBitBlt = GDIDEVFUNCS(psoSrc).BitBlt; } @@ -637,21 +619,6 @@ IntEngBitBltEx( // FIXME: cleanup temp surface! - if (bRemoveMouse) - { - MouseSafetyOnDrawEnd(psoTrg); - if (psoSrc) - { - MouseSafetyOnDrawEnd(psoSrc); - if (psoSrc != psoTrg) - { - SURFACE_UnlockBitmapBits(psurfSrc); - } - } - - SURFACE_UnlockBitmapBits(psurfTrg); - } - return bResult; } @@ -983,27 +950,20 @@ IntEngMaskBlt(SURFOBJ *psoDest, ASSERT(psoDest); psurfDest = CONTAINING_RECORD(psoDest, SURFACE, SurfObj); - SURFACE_LockBitmapBits(psurfDest); - MouseSafetyOnDrawStart(psoDest, OutputRect.left, OutputRect.top, - OutputRect.right, OutputRect.bottom); - /* Dummy BitBlt to let driver know that it should flush its changes. This should really be done using a call to DrvSynchronizeSurface, but the VMware driver doesn't hook that call. */ - IntEngBitBltEx(psoDest, NULL, psoMask, ClipRegion, DestColorTranslation, + IntEngBitBlt(psoDest, NULL, psoMask, ClipRegion, DestColorTranslation, DestRect, pptlMask, pptlMask, pbo, BrushOrigin, - R4_NOOP, FALSE); + R4_NOOP); ret = EngMaskBitBlt(psoDest, psoMask, ClipRegion, DestColorTranslation, SourceColorTranslation, &OutputRect, &InputPoint, pbo, BrushOrigin); /* Dummy BitBlt to let driver know that something has changed. */ - IntEngBitBltEx(psoDest, NULL, psoMask, ClipRegion, DestColorTranslation, + IntEngBitBlt(psoDest, NULL, psoMask, ClipRegion, DestColorTranslation, DestRect, pptlMask, pptlMask, pbo, BrushOrigin, - R4_NOOP, FALSE); - - MouseSafetyOnDrawEnd(psoDest); - SURFACE_UnlockBitmapBits(psurfDest); + R4_NOOP); return ret; }