shithub: freetype+ttf2subf

Download patch

ref: 535b687e58960f29c2da936c486deb3065d32250
parent: 787db7c04815acf9ef25ec262be675a632cdd95e
author: Werner Lemberg <[email protected]>
date: Thu May 16 05:55:16 EDT 2019

[truetype] Avoid code duplication.

* src/truetype/ttobjs.c (tt_size_run_prep): Scale CVT values in this
function.
(tt_size_ready_bytecode): Updated.
* src/truetype/ttgload.c (tt_loader_init): Updated.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2019-05-16  Werner Lemberg  <[email protected]>
+
+	[truetype] Avoid code duplication.
+
+	* src/truetype/ttobjs.c (tt_size_run_prep): Scale CVT values in this
+	function.
+	(tt_size_ready_bytecode): Updated.
+	* src/truetype/ttgload.c (tt_loader_init): Updated.
+
 2019-05-13  Jouk Jansen  <[email protected]>
 
 	* vms_make.com: Updated.  Handle `bzip2' directory, too.
--- a/src/truetype/ttgload.c
+++ b/src/truetype/ttgload.c
@@ -2681,11 +2681,6 @@
 
       if ( reexecute )
       {
-        FT_UInt  i;
-
-
-        for ( i = 0; i < size->cvt_size; i++ )
-          size->cvt[i] = FT_MulFix( face->cvt[i], size->ttmetrics.scale );
         error = tt_size_run_prep( size, pedantic );
         if ( error )
           return error;
--- a/src/truetype/ttobjs.c
+++ b/src/truetype/ttobjs.c
@@ -937,8 +937,20 @@
     TT_Face         face = (TT_Face)size->root.face;
     TT_ExecContext  exec;
     FT_Error        error;
+    FT_UInt         i;
 
 
+    /* Scale the cvt values to the new ppem.            */
+    /* By default, we use the y ppem value for scaling. */
+    FT_TRACE6(( "CVT values:\n" ));
+    for ( i = 0; i < size->cvt_size; i++ )
+    {
+      size->cvt[i] = FT_MulFix( face->cvt[i], size->ttmetrics.scale );
+      FT_TRACE6(( "  %3d: %d (%f)\n",
+                  i, face->cvt[i], size->cvt[i] / 64.0 ));
+    }
+    FT_TRACE6(( "\n" ));
+
     exec = size->context;
 
     error = TT_Load_Context( exec, face, size );
@@ -1171,19 +1183,7 @@
     if ( size->cvt_ready < 0 )
     {
       FT_UInt  i;
-      TT_Face  face = (TT_Face)size->root.face;
 
-
-      /* Scale the cvt values to the new ppem.            */
-      /* By default, we use the y ppem value for scaling. */
-      FT_TRACE6(( "CVT values:\n" ));
-      for ( i = 0; i < size->cvt_size; i++ )
-      {
-        size->cvt[i] = FT_MulFix( face->cvt[i], size->ttmetrics.scale );
-        FT_TRACE6(( "  %3d: %d (%f)\n",
-                    i, face->cvt[i], size->cvt[i] / 64.0 ));
-      }
-      FT_TRACE6(( "\n" ));
 
       /* all twilight points are originally zero */
       for ( i = 0; i < (FT_UInt)size->twilight.n_points; i++ )