From cfefbb200a194e429893125650bb35066dd10d07 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?G=C3=A9=20van=20Geldorp?= Date: Tue, 6 Sep 2005 23:16:18 +0000 Subject: [PATCH] Correct sizes if origin is not (0, 0) svn path=/trunk/; revision=17709 --- reactos/subsys/win32k/dib/dib16bpp.c | 8 ++++---- reactos/subsys/win32k/dib/dib1bpp.c | 10 +++++----- reactos/subsys/win32k/dib/dib24bpp.c | 10 +++++----- reactos/subsys/win32k/dib/dib32bpp.c | 8 ++++---- reactos/subsys/win32k/dib/dib4bpp.c | 9 ++++----- reactos/subsys/win32k/dib/dib8bpp.c | 10 +++++----- 6 files changed, 27 insertions(+), 28 deletions(-) diff --git a/reactos/subsys/win32k/dib/dib16bpp.c b/reactos/subsys/win32k/dib/dib16bpp.c index 060246fb5e5..e6d00fd10d0 100644 --- a/reactos/subsys/win32k/dib/dib16bpp.c +++ b/reactos/subsys/win32k/dib/dib16bpp.c @@ -630,11 +630,11 @@ BOOLEAN DIB_16BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf, BitsPerFormat(SourceSurf->iBitmapFormat), SourceRect->left, SourceRect->top, SourceRect->right, SourceRect->bottom, DestRect->left, DestRect->top, DestRect->right, DestRect->bottom); - SrcSizeY = SourceRect->bottom; - SrcSizeX = SourceRect->right; + SrcSizeY = SourceRect->bottom - SourceRect->top; + SrcSizeX = SourceRect->right - SourceRect->left; - DesSizeY = DestRect->bottom; - DesSizeX = DestRect->right; + DesSizeY = DestRect->bottom - DestRect->top; + DesSizeX = DestRect->right - DestRect->left; zoomX = DesSizeX / SrcSizeX; if (zoomX==0) zoomX=1; diff --git a/reactos/subsys/win32k/dib/dib1bpp.c b/reactos/subsys/win32k/dib/dib1bpp.c index e782f268413..9bbd125af6d 100644 --- a/reactos/subsys/win32k/dib/dib1bpp.c +++ b/reactos/subsys/win32k/dib/dib1bpp.c @@ -518,11 +518,11 @@ BOOLEAN DIB_1BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf, int saveY; BOOLEAN DesIsBiggerY=FALSE; - SrcSizeY = SourceRect->bottom; - SrcSizeX = SourceRect->right; - - DesSizeY = DestRect->bottom; - DesSizeX = DestRect->right; + SrcSizeY = SourceRect->bottom - SourceRect->top; + SrcSizeX = SourceRect->right - SourceRect->left; + + DesSizeY = DestRect->bottom - DestRect->top; + DesSizeX = DestRect->right - DestRect->left; zoomX = DesSizeX / SrcSizeX; if (zoomX==0) zoomX=1; diff --git a/reactos/subsys/win32k/dib/dib24bpp.c b/reactos/subsys/win32k/dib/dib24bpp.c index 7e1d626393b..5d1fbf54f83 100644 --- a/reactos/subsys/win32k/dib/dib24bpp.c +++ b/reactos/subsys/win32k/dib/dib24bpp.c @@ -513,11 +513,11 @@ BOOLEAN DIB_24BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf, int saveY; BOOLEAN DesIsBiggerY=FALSE; - SrcSizeY = SourceRect->bottom; - SrcSizeX = SourceRect->right; - - DesSizeY = DestRect->bottom; - DesSizeX = DestRect->right; + SrcSizeY = SourceRect->bottom - SourceRect->top; + SrcSizeX = SourceRect->right - SourceRect->left; + + DesSizeY = DestRect->bottom - DestRect->top; + DesSizeX = DestRect->right - DestRect->left; zoomX = DesSizeX / SrcSizeX; if (zoomX==0) zoomX=1; diff --git a/reactos/subsys/win32k/dib/dib32bpp.c b/reactos/subsys/win32k/dib/dib32bpp.c index 7a40a3cc647..1302ab480f5 100644 --- a/reactos/subsys/win32k/dib/dib32bpp.c +++ b/reactos/subsys/win32k/dib/dib32bpp.c @@ -557,11 +557,11 @@ BOOLEAN DIB_32BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf, BitsPerFormat(SourceSurf->iBitmapFormat), SourceRect->left, SourceRect->top, SourceRect->right, SourceRect->bottom, DestRect->left, DestRect->top, DestRect->right, DestRect->bottom); - SrcSizeY = SourceRect->bottom; - SrcSizeX = SourceRect->right; + SrcSizeY = SourceRect->bottom - SourceRect->top; + SrcSizeX = SourceRect->right - SourceRect->left; - DesSizeY = DestRect->bottom; - DesSizeX = DestRect->right; + DesSizeY = DestRect->bottom - DestRect->top; + DesSizeX = DestRect->right - DestRect->left; zoomX = DesSizeX / SrcSizeX; if (zoomX==0) zoomX=1; diff --git a/reactos/subsys/win32k/dib/dib4bpp.c b/reactos/subsys/win32k/dib/dib4bpp.c index caf6e530cc7..8d673c16fcb 100644 --- a/reactos/subsys/win32k/dib/dib4bpp.c +++ b/reactos/subsys/win32k/dib/dib4bpp.c @@ -397,12 +397,11 @@ BOOLEAN DIB_4BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf, int saveY; BOOLEAN DesIsBiggerY=FALSE; + SrcSizeY = SourceRect->bottom - SourceRect->top; + SrcSizeX = SourceRect->right - SourceRect->left; - SrcSizeY = SourceRect->bottom; - SrcSizeX = SourceRect->right; - - DesSizeY = DestRect->bottom; - DesSizeX = DestRect->right; + DesSizeY = DestRect->bottom - DestRect->top; + DesSizeX = DestRect->right - DestRect->left; zoomX = DesSizeX / SrcSizeX; if (zoomX==0) zoomX=1; diff --git a/reactos/subsys/win32k/dib/dib8bpp.c b/reactos/subsys/win32k/dib/dib8bpp.c index d01b1b597ca..2565227021d 100644 --- a/reactos/subsys/win32k/dib/dib8bpp.c +++ b/reactos/subsys/win32k/dib/dib8bpp.c @@ -480,11 +480,11 @@ BOOLEAN DIB_8BPP_StretchBlt(SURFOBJ *DestSurf, SURFOBJ *SourceSurf, BitsPerFormat(SourceSurf->iBitmapFormat), SourceRect->left, SourceRect->top, SourceRect->right, SourceRect->bottom, DestRect->left, DestRect->top, DestRect->right, DestRect->bottom); - SrcSizeY = SourceRect->bottom; - SrcSizeX = SourceRect->right; - - DesSizeY = DestRect->bottom; - DesSizeX = DestRect->right; + SrcSizeY = SourceRect->bottom - SourceRect->top; + SrcSizeX = SourceRect->right - SourceRect->left; + + DesSizeY = DestRect->bottom - DestRect->top; + DesSizeX = DestRect->right - DestRect->left; zoomX = DesSizeX / SrcSizeX; if (zoomX==0) zoomX=1;