Forgot to commit this code in r39227, needed for basic clipping.

svn path=/trunk/; revision=39323
This commit is contained in:
Gregor Schneider 2009-02-03 14:33:23 +00:00
parent df7415ebd9
commit e4ca01940c

View file

@ -139,27 +139,34 @@ BOOLEAN DIB_XXBPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf,
for (DesX=DestRect->left; DesX<DestRect->right; DesX++) for (DesX=DestRect->left; DesX<DestRect->right; DesX++)
{ {
if (UsesSource) /* Check if inside clip region */
if (DesX >= OutputRect.left &&
DesX < OutputRect.right &&
DesY >= OutputRect.top &&
DesY < OutputRect.bottom)
{ {
Source = XLATEOBJ_iXlate(ColorTranslation, fnSource_GetPixel(SourceSurf, sx, sy)); if (UsesSource)
} {
Source = XLATEOBJ_iXlate(ColorTranslation, fnSource_GetPixel(SourceSurf, sx, sy));
}
if (UsesPattern) if (UsesPattern)
{ {
/* TBD as soon as BRUSHOBJ is available */ /* TBD as soon as BRUSHOBJ is available */
} }
Dest = fnDest_GetPixel(DestSurf, DesX, DesY); Dest = fnDest_GetPixel(DestSurf, DesX, DesY);
color = DIB_DoRop(ROP, Dest, Source, Pattern) & xxBPPMask; color = DIB_DoRop(ROP, Dest, Source, Pattern) & xxBPPMask;
fnDest_PutPixel(DestSurf, DesX, DesY, color); fnDest_PutPixel(DestSurf, DesX, DesY, color);
sx += SrcZoomXHight; sx += SrcZoomXHight;
sx_dec += SrcZoomXLow; sx_dec += SrcZoomXLow;
if (sx_dec >= sx_max) if (sx_dec >= sx_max)
{ {
sx++; sx++;
sx_dec -= sx_max; sx_dec -= sx_max;
}
} }
} }