changeset 9964:b7aa6cda7a03

8240119: Less Affine Transformations Reviewed-by: serb, bpb, mschoene, rhalade
author prr
date Tue, 17 Mar 2020 13:46:19 -0700
parents 7746a8e93b68
children f175970357d1
files src/share/native/sun/awt/medialib/mlib_ImageScanPoly.c
diffstat 1 files changed, 12 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/native/sun/awt/medialib/mlib_ImageScanPoly.c	Tue Mar 10 07:07:09 2020 +0100
+++ b/src/share/native/sun/awt/medialib/mlib_ImageScanPoly.c	Tue Mar 17 13:46:19 2020 -0700
@@ -408,7 +408,9 @@
         if ((dxs < dxCl) || (dxs >= dwCl) || (dys < dyCl) || (dys >= dhCl)) {
           dxs += dx;
           dys += dy;
-          xLeft++;
+          if (xLeft < MLIB_S32_MAX) {
+              xLeft++;
+          }
 
           if ((dxs < dxCl) || (dxs >= dwCl) || (dys < dyCl) || (dys >= dhCl))
             xRight = -1;
@@ -420,7 +422,9 @@
         if ((dxe < dxCl) || (dxe >= dwCl) || (dye < dyCl) || (dye >= dhCl)) {
           dxe -= dx;
           dye -= dy;
-          xRight--;
+          if (xRight > MLIB_S32_MIN) {
+              xRight--;
+          }
 
           if ((dxe < dxCl) || (dxe >= dwCl) || (dye < dyCl) || (dye >= dhCl))
             xRight = -1;
@@ -494,7 +498,9 @@
         if ((dxs > dxCl) || (dxs <= dwCl) || (dys > dyCl) || (dys <= dhCl)) {
           dxs += dx;
           dys += dy;
-          xLeft++;
+          if (xLeft < MLIB_S32_MAX) {
+              xLeft++;
+          }
 
           if ((dxs > dxCl) || (dxs <= dwCl) || (dys > dyCl) || (dys <= dhCl))
             xRight = -1;
@@ -506,7 +512,9 @@
         if ((dxe > dxCl) || (dxe <= dwCl) || (dye > dyCl) || (dye <= dhCl)) {
           dxe -= dx;
           dye -= dy;
-          xRight--;
+          if (xRight > MLIB_S32_MIN) {
+              xRight--;
+          }
 
           if ((dxe > dxCl) || (dxe <= dwCl) || (dye > dyCl) || (dye <= dhCl))
             xRight = -1;