shithub: freetype+ttf2subf

Download patch

ref: f3dad68be8ab7116b496984fb00324baa1e65d10
parent: 70d6f38ed21582305cd1499718e45f4b33bb4eb2
author: Tom Kacvinsky <[email protected]>
date: Mon Mar 19 08:52:31 EST 2001

In function parse_font_matrix(), make sure that the units per em value
is assigned an unsigned short value, first by shifting right 16 bits,
then by casting the results to FT_UShort.

git/fs: mount .git/fs: mount/attach disallowed
--- a/src/type1/t1load.c
+++ b/src/type1/t1load.c
@@ -894,8 +894,9 @@
     /* Set Units per EM based on FontMatrix values. We set the value to */
     /* 1000 / temp_scale, because temp_scale was already multiplied by  */
     /* 1000 (in t1_tofixed, from psobjs.c).                             */
-    root->units_per_EM = (FT_UShort)FT_DivFix( 0x10000L,
-                                               FT_DivFix( temp_scale, 1000 ) );
+
+    root->units_per_EM = (FT_UShort)( FT_DivFix( 0x10000L,
+                                      FT_DivFix( temp_scale, 1000 ) ) >> 16 );
 
     /* we need to scale the values by 1.0/temp_scale */
     if ( temp_scale != 0x10000L )