From: Jérôme Gardou Date: Tue, 20 Apr 2010 22:20:55 +0000 (+0000) Subject: [WIN32K] X-Git-Tag: backups/reactos-yarotows@57446~150 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=d8020bbbe147e159c3cb4ac3828794cad35097bb [WIN32K] - revert unwanted change from r46964 - Use MouseSafetyOnDrawStart/End in GreExtTextOutW when we already hold the blit lock svn path=/branches/reactos-yarotows/; revision=46969 --- diff --git a/subsystems/win32/win32k/objects/bitblt.c b/subsystems/win32/win32k/objects/bitblt.c index f2bb3b23256..7d0dcb6b8a5 100644 --- a/subsystems/win32/win32k/objects/bitblt.c +++ b/subsystems/win32/win32k/objects/bitblt.c @@ -936,6 +936,7 @@ IntPatBlt( { RECTL DestRect; SURFACE *psurf; + EBRUSHOBJ eboFill ; POINTL BrushOrigin; BOOL ret; @@ -985,6 +986,8 @@ IntPatBlt( if (pdc->pdcattr->ulDirty_ & (DIRTY_FILL | DC_BRUSH_DIRTY)) DC_vUpdateFillBrush(pdc); + EBRUSHOBJ_vInit(&eboFill, pbrush, pdc); + ret = IntEngBitBlt( &psurf->SurfObj, NULL, @@ -994,12 +997,14 @@ IntPatBlt( &DestRect, NULL, NULL, - &pdc->eboFill.BrushObject, + &eboFill.BrushObject, &BrushOrigin, ROP3_TO_ROP4(dwRop)); DC_vFinishBlit(pdc, NULL); + EBRUSHOBJ_vCleanup(&eboFill); + return ret; } diff --git a/subsystems/win32/win32k/objects/freetype.c b/subsystems/win32/win32k/objects/freetype.c index 00da100df9f..921451c007c 100644 --- a/subsystems/win32/win32k/objects/freetype.c +++ b/subsystems/win32/win32k/objects/freetype.c @@ -3506,7 +3506,7 @@ GreExtTextOutW( DestRect.right = (TextLeft + (realglyph->root.advance.x >> 10) + 32) >> 6; DestRect.top = TextTop + yoff - ((face->size->metrics.ascender + 32) >> 6); DestRect.bottom = TextTop + yoff + ((32 - face->size->metrics.descender) >> 6); - DC_vPrepareDCsForBlit(dc, DestRect, NULL, DestRect); + MouseSafetyOnDrawStart(dc->ppdev, DestRect.left, DestRect.top, DestRect.right, DestRect.bottom); IntEngBitBlt( &psurf->SurfObj, NULL, @@ -3519,7 +3519,7 @@ GreExtTextOutW( &dc->eboBackground.BrushObject, &BrushOrigin, ROP3_TO_ROP4(PATCOPY)); - DC_vFinishBlit(dc, NULL); + MouseSafetyOnDrawEnd(dc->ppdev); BackgroundLeft = DestRect.right; } @@ -3574,7 +3574,7 @@ GreExtTextOutW( DestRect.right = lprc->right + dc->ptlDCOrig.x; DoBreak = TRUE; } - DC_vPrepareDCsForBlit(dc, DestRect, NULL, DestRect); + MouseSafetyOnDrawStart(dc->ppdev, DestRect.left, DestRect.top, DestRect.right, DestRect.bottom); IntEngMaskBlt( SurfObj, SourceGlyphSurf, @@ -3585,7 +3585,7 @@ GreExtTextOutW( (PPOINTL)&MaskRect, &dc->eboText.BrushObject, &BrushOrigin); - DC_vFinishBlit(dc, NULL); + MouseSafetyOnDrawEnd(dc->ppdev) ; EngUnlockSurface(SourceGlyphSurf); EngDeleteSurface((HSURF)HSourceGlyph);