shithub: freetype+ttf2subf

Download patch

ref: c5a8a5350a572cac399643ec8cacdb3330dc79df
parent: 78db8a2570b51a7503078c228afeec90147817c4
author: Werner Lemberg <[email protected]>
date: Mon May 14 05:42:20 EDT 2018

Provide dummy functions if `TT_CONFIG_OPTION_SFNT_NAMES' is not set.

* src/base/ftsnames.c [!TT_CONFIG_OPTION_SFNT_NAMES]: Implement it.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2018-05-14  Werner Lemberg  <[email protected]>
+
+	Provide dummy functions if `TT_CONFIG_OPTION_SFNT_NAMES' is not set.
+
+	* src/base/ftsnames.c [!TT_CONFIG_OPTION_SFNT_NAMES]: Implement it.
+
 2018-05-13  Werner Lemberg  <[email protected]>
 
 	* src/base/ftobjs.c (FT_Load_Glyph): Improve tracing.
--- a/include/freetype/ftsnames.h
+++ b/include/freetype/ftsnames.h
@@ -130,6 +130,10 @@
   /* <Return>                                                              */
   /*    The number of strings in the `name' table.                         */
   /*                                                                       */
+  /* <Note>                                                                */
+  /*    This function always returns an error if the config macro          */
+  /*    `TT_CONFIG_OPTION_SFNT_NAMES' is not defined in `ftoption.h'.      */
+  /*                                                                       */
   FT_EXPORT( FT_UInt )
   FT_Get_Sfnt_Name_Count( FT_Face  face );
 
@@ -165,6 +169,9 @@
   /*    `name' table format~1 entries can use language tags also, see      */
   /*    @FT_Get_Sfnt_LangTag.                                              */
   /*                                                                       */
+  /*    This function always returns an error if the config macro          */
+  /*    `TT_CONFIG_OPTION_SFNT_NAMES' is not defined in `ftoption.h'.      */
+  /*                                                                       */
   FT_EXPORT( FT_Error )
   FT_Get_Sfnt_Name( FT_Face       face,
                     FT_UInt       idx,
@@ -232,6 +239,9 @@
   /*    tables, this function always returns FT_Err_Invalid_Table.  For    */
   /*    invalid format~1 language ID values, FT_Err_Invalid_Argument is    */
   /*    returned.                                                          */
+  /*                                                                       */
+  /*    This function always returns an error if the config macro          */
+  /*    `TT_CONFIG_OPTION_SFNT_NAMES' is not defined in `ftoption.h'.      */
   /*                                                                       */
   /* <Since>                                                               */
   /*    2.8                                                                */
--- a/src/base/ftsnames.c
+++ b/src/base/ftsnames.c
@@ -142,7 +142,45 @@
   }
 
 
-#endif /* TT_CONFIG_OPTION_SFNT_NAMES */
+#else /* !TT_CONFIG_OPTION_SFNT_NAMES */
+
+
+  FT_EXPORT_DEF( FT_UInt )
+  FT_Get_Sfnt_Name_Count( FT_Face  face )
+  {
+    FT_UNUSED( face );
+
+    return 0;
+  }
+
+
+  FT_EXPORT_DEF( FT_Error )
+  FT_Get_Sfnt_Name( FT_Face       face,
+                    FT_UInt       idx,
+                    FT_SfntName  *aname )
+  {
+    FT_UNUSED( face );
+    FT_UNUSED( idx );
+    FT_UNUSED( aname );
+
+    return FT_THROW( Unimplemented_Feature );
+  }
+
+
+  FT_EXPORT_DEF( FT_Error )
+  FT_Get_Sfnt_LangTag( FT_Face          face,
+                       FT_UInt          langID,
+                       FT_SfntLangTag  *alangTag )
+  {
+    FT_UNUSED( face );
+    FT_UNUSED( langID );
+    FT_UNUSED( alangTag );
+
+    return FT_THROW( Unimplemented_Feature );
+  }
+
+
+#endif /* !TT_CONFIG_OPTION_SFNT_NAMES */
 
 
 /* END */