Correct sizes if origin is not (0, 0)
authorGé van Geldorp <ge@gse.nl>
Tue, 6 Sep 2005 23:16:18 +0000 (23:16 +0000)
committerGé van Geldorp <ge@gse.nl>
Tue, 6 Sep 2005 23:16:18 +0000 (23:16 +0000)
svn path=/trunk/; revision=17709

reactos/subsys/win32k/dib/dib16bpp.c
reactos/subsys/win32k/dib/dib1bpp.c
reactos/subsys/win32k/dib/dib24bpp.c
reactos/subsys/win32k/dib/dib32bpp.c
reactos/subsys/win32k/dib/dib4bpp.c
reactos/subsys/win32k/dib/dib8bpp.c

index 060246f..e6d00fd 100644 (file)
@@ -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;
index e782f26..9bbd125 100644 (file)
@@ -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;
index 7e1d626..5d1fbf5 100644 (file)
@@ -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;
index 7a40a3c..1302ab4 100644 (file)
@@ -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;
index caf6e53..8d673c1 100644 (file)
@@ -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;
index d01b1b5..2565227 100644 (file)
@@ -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;