From dff30ac2c71c73d001dfeeadc3093b15dcdcb4fc Mon Sep 17 00:00:00 2001 From: Pascal Lessard <pascal@macadamian.com> Date: Sun, 15 Aug 1999 14:18:59 +0000 Subject: [PATCH] Now the conversion in the blt functions round up the result. --- graphics/x11drv/bitblt.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/graphics/x11drv/bitblt.c b/graphics/x11drv/bitblt.c index dbf75c68c7c..82228d337eb 100644 --- a/graphics/x11drv/bitblt.c +++ b/graphics/x11drv/bitblt.c @@ -1140,8 +1140,10 @@ static BOOL BITBLT_InternalStretchBlt( DC *dcDst, INT xDst, INT yDst, xDst = dcDst->w.DCOrgX + XLPTODP( dcDst, xDst ); yDst = dcDst->w.DCOrgY + YLPTODP( dcDst, yDst ); - widthDst = widthDst * dcDst->vportExtX / dcDst->wndExtX; - heightDst = heightDst * dcDst->vportExtY / dcDst->wndExtY; + + /* Here we have to round to integers, not truncate */ + widthDst = MulDiv(widthDst, dcDst->vportExtX, dcDst->wndExtX); + heightDst = MulDiv(heightDst, dcDst->vportExtY, dcDst->wndExtY); TRACE(" vportdst=%d,%d-%d,%d wnddst=%d,%d-%d,%d\n", dcDst->vportOrgX, dcDst->vportOrgY, -- GitLab