ref: f37083edf0ef562fb8bae0dfc6f916b1037f71fe
parent: 49079ce297c1698139456d0d3664bf32674d0ee5
author: Ben Wagner <bungeman@google.com>
date: Wed May 29 04:15:38 EDT 2019
[truetype] Fix copy-and-paste error (#56409). * src/truetype/ttgload.c (load_truetype_glyph): Use correct indices into `unrounded' array for phantom points.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2019-05-26 Ben Wagner <bungeman@google.com>
+
+ [truetype] Fix copy-and-paste error (#56409).
+
+ * src/truetype/ttgload.c (load_truetype_glyph): Use correct indices
+ into `unrounded' array for phantom points.
+
2019-05-29 Werner Lemberg <wl@gnu.org>
[truetype] Fix 32bit builds (#56404).
--- a/src/truetype/ttgload.c
+++ b/src/truetype/ttgload.c
@@ -2018,11 +2018,13 @@
/* recalculate linear horizontal and vertical advances */
/* if we don't have HVAR and VVAR, respectively */
if ( !( face->variation_support & TT_FACE_FLAG_VAR_HADVANCE ) )
- loader->linear = FT_PIX_ROUND( unrounded[1].x -
- unrounded[0].x ) / 64;
+ loader->linear =
+ FT_PIX_ROUND( unrounded[outline.n_points - 3].x -
+ unrounded[outline.n_points - 4].x ) / 64;
if ( !( face->variation_support & TT_FACE_FLAG_VAR_VADVANCE ) )
- loader->vadvance = FT_PIX_ROUND( unrounded[3].x -
- unrounded[2].x ) / 64;
+ loader->vadvance =
+ FT_PIX_ROUND( unrounded[outline.n_points - 1].x -
+ unrounded[outline.n_points - 2].x ) / 64;
Exit1:
FT_FREE( outline.points );