Minor fix. Use `MultiMasters' service in `psaux' instead of a call to `cff'. The project builds if CFF_CONFIG_OPTION_OLD_ENGINE is not defined. * src/psaux/cf2ft.c: Update includes. (cf2_getNormalizedVector): Use `mm->get_var_blend' instead of `cff_get_var_blend'.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
diff --git a/ChangeLog b/ChangeLog
index 45fba7d..d277cf3 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,16 @@
2017-09-24 Ewald Hew <ewaldhew@gmail.com>
+ [psaux] Minor fix.
+
+ Use `MultiMasters' service in `psaux' instead of a call to `cff'.
+ The project builds if CFF_CONFIG_OPTION_OLD_ENGINE is not defined.
+
+ * src/psaux/cf2ft.c: Update includes.
+ (cf2_getNormalizedVector): Use `mm->get_var_blend' instead of
+ `cff_get_var_blend'.
+
+2017-09-24 Ewald Hew <ewaldhew@gmail.com>
+
[psaux, cff] Move `cff_random' into `psaux' service.
NOTE: Does not compile!
diff --git a/src/psaux/cf2ft.c b/src/psaux/cf2ft.c
index ee8133c..6bffce9 100644
--- a/src/psaux/cf2ft.c
+++ b/src/psaux/cf2ft.c
@@ -42,6 +42,11 @@
#include "cf2font.h"
#include "cf2error.h"
+#ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
+#include FT_MULTIPLE_MASTERS_H
+#include FT_SERVICE_MULTIPLE_MASTERS_H
+#endif
+
#include FT_SERVICE_CFF_TABLE_LOAD_H
#define CF2_MAX_SIZE cf2_intToFixed( 2000 ) /* max ppem */
@@ -456,10 +461,16 @@
CF2_UInt *len,
FT_Fixed* *vec )
{
+ TT_Face face;
+ FT_Service_MultiMasters mm;
+
FT_ASSERT( decoder && decoder->builder.face );
FT_ASSERT( vec && len );
-
- return cff_get_var_blend( decoder->builder.face, len, NULL, vec, NULL );
+
+ face = decoder->builder.face;
+ mm = (FT_Service_MultiMasters)face->mm;
+
+ return mm->get_var_blend( FT_FACE( face ), len, NULL, vec, NULL );
}
#endif