From f240bd9f61c911074b6cc805b7dfacbd12cea393 Mon Sep 17 00:00:00 2001 From: Magnus Olsen Date: Fri, 3 Jun 2005 01:18:02 +0000 Subject: [PATCH] blt fill did broke winquake fix it now. svn path=/trunk/; revision=15744 --- reactos/subsys/win32k/dib/dib32bpp.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/reactos/subsys/win32k/dib/dib32bpp.c b/reactos/subsys/win32k/dib/dib32bpp.c index 7dd66eb6ab0..662a41432b2 100644 --- a/reactos/subsys/win32k/dib/dib32bpp.c +++ b/reactos/subsys/win32k/dib/dib32bpp.c @@ -329,18 +329,17 @@ DIB_32BPP_BitBlt(PBLTINFO BltInfo) else { SourceX = ((BltInfo->DestRect.bottom - BltInfo->DestRect.top) * - BltInfo->DestRect.right) << 2; + BltInfo->DestRect.right); memset4(BltInfo->DestSurface->pvScan0 + BltInfo->DestRect.top * BltInfo->DestSurface->lDelta, 0x00000000, SourceX); } -#else - SourceX = (BltInfo->DestRect.right - BltInfo->DestRect.left) << 2; +#else for (DestY=BltInfo->DestRect.bottom-1;DestY>=BltInfo->DestRect.top;DestY--) { - DIB_32BPP_HLine(BltInfo->DestSurface, BltInfo->DestRect.bottom, SourceX, DestY, 0x00000000); + DIB_32BPP_HLine(BltInfo->DestSurface, BltInfo->DestRect.left, BltInfo->DestRect.right, DestY, 0x00000000); } #endif @@ -364,7 +363,7 @@ DIB_32BPP_BitBlt(PBLTINFO BltInfo) else { SourceX = ((BltInfo->DestRect.bottom - BltInfo->DestRect.top) * - BltInfo->DestRect.right) << 2; + BltInfo->DestRect.right); memset4(BltInfo->DestSurface->pvScan0 + BltInfo->DestRect.top * BltInfo->DestSurface->lDelta, 0xFFFFFFFF, SourceX); @@ -372,10 +371,9 @@ DIB_32BPP_BitBlt(PBLTINFO BltInfo) } #else - SourceX = (BltInfo->DestRect.right - BltInfo->DestRect.left) << 2; for (DestY=BltInfo->DestRect.bottom-1;DestY>=BltInfo->DestRect.top;DestY--) { - DIB_32BPP_HLine(BltInfo->DestSurface, BltInfo->DestRect.bottom, SourceX, DestY, 0xFFFFFFFF); + DIB_32BPP_HLine(BltInfo->DestSurface, BltInfo->DestRect.left, BltInfo->DestRect.left, DestY, 0xFFFFFFFF); } #endif return TRUE; @@ -395,6 +393,7 @@ DIB_32BPP_BitBlt(PBLTINFO BltInfo) case BMF_24BPP: break; case BMF_32BPP: + SrcmaxX = BltInfo->SourceSurface->sizlBitmap.cx - BltInfo->SourcePoint.x; SrcmaxY = BltInfo->SourceSurface->sizlBitmap.cy - BltInfo->SourcePoint.y;