ref: eba3eeecd9578bd6217d276cb1b715d77ecaab87
parent: 17e69011123a339f3fd5bdf1fafa866f8431513a
author: Werner Lemberg <[email protected]>
date: Mon Aug 4 11:54:24 EDT 2008
* src/cff/cffparse.c (cff_parse_fixed_scaled): Fix thinko which resulted in incorrect scaling. This fixes Savannah bug #23973.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-08-04 Bram Tassyns <[email protected]>
+
+ * src/cff/cffparse.c (cff_parse_fixed_scaled): Fix thinko which
+ resulted in incorrect scaling. This fixes Savannah bug #23973.
+
2008-08-04 Werner Lemberg <[email protected]>
Be more tolerant w.r.t. invalid entries in SFNT table directory.
--- a/src/cff/cffparse.c
+++ b/src/cff/cffparse.c
@@ -406,10 +406,9 @@
cff_parse_fixed_scaled( FT_Byte** d,
FT_Int scaling )
{
- return **d ==
- 30 ? cff_parse_real( d[0], d[1], scaling, NULL )
- : (FT_Fixed)FT_MulFix( cff_parse_integer( d[0], d[1] ) << 16,
- power_tens[scaling] );
+ return **d == 30 ? cff_parse_real( d[0], d[1], scaling, NULL )
+ : ( cff_parse_integer( d[0], d[1] ) *
+ power_tens[scaling] ) << 16;
}