Commit 64985519210a1b62fcfccf394e6ab0f7bfe9be09

Werner Lemberg 2017-10-09T07:45:03

* src/base/ftoutln.c (FT_Outline_Translate): Fix integer overflow. Reported as https://bugs.chromium.org/p/chromium/issues/detail?id=772775

diff --git a/ChangeLog b/ChangeLog
index 178ea06..0c0650f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2017-10-09  Werner Lemberg  <wl@gnu.org>
+
+	* src/base/ftoutln.c (FT_Outline_Translate): Fix integer overflow.
+
+	Reported as
+
+	  https://bugs.chromium.org/p/chromium/issues/detail?id=772775
+
 2017-10-08  Werner Lemberg  <wl@gnu.org>
 
 	* src/base/ftobjs.c (ft_glyphslot_preset_bitmap): Integer overflows.
diff --git a/src/base/ftoutln.c b/src/base/ftoutln.c
index 9ceb9cf..cbbcb85 100644
--- a/src/base/ftoutln.c
+++ b/src/base/ftoutln.c
@@ -540,8 +540,8 @@
 
     for ( n = 0; n < outline->n_points; n++ )
     {
-      vec->x += xOffset;
-      vec->y += yOffset;
+      vec->x = ADD_LONG( vec->x, xOffset );
+      vec->y = ADD_LONG( vec->y, yOffset );
       vec++;
     }
   }