shithub: freetype+ttf2subf

Download patch

ref: 67750c8fa425a918f39b9145aa5aa494f40fddb3
parent: 6870f4cf1ad4c264d16f4073c50e86c37b5fccc8
author: David Turner <[email protected]>
date: Tue Aug 21 04:50:45 EDT 2001

updating the definition of FT_CONFIG_OPTION_USE_MODULE_ERRORS
to _undefined_ (source compatibility breaking issue) + updated its comment

back from holidays, woohoo :-)

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2001-08-21  David Turner  <[email protected]>
+
+	* include/freetype/config/ftoption.h: changed the default setting for
+	FT_CONFIG_OPTION_USE_MODULE_ERRORS to undefined, since it breaks source
+	compatibility in a few cases.. (sorry Werner). Updated the comment to
+	explain that too..
+
 2001-08-17  Martin Muskens  <[email protected]>
 
 	* src/base/ftcalc.c (FT_MulDiv): Fixed serious typo.
--- a/include/freetype/config/ftoption.h
+++ b/include/freetype/config/ftoption.h
@@ -77,16 +77,17 @@
   /*                                                                       */
   /* Module errors                                                         */
   /*                                                                       */
-  /*   If this macro is set (which is the default), the higher byte of an  */
-  /*   error code gives the module in which the error has occurred, while  */
-  /*   the lower byte is the real error code.                              */
+  /*   If this macro is set (which is _not_ the default), the higher byte  */
+  /*   of an error code gives the module in which the error has occurred,  */
+  /*   while the lower byte is the real error code.                        */
   /*                                                                       */
-  /*   Unsetting this macro makes sense for backwards compatibility; only  */
-  /*   the real error code is emitted, and the higher byte is always zero. */
+  /*   Setting this macro makes sense for debugging purposes only, since   */
+  /*   it would break source compatibility of certain programs that use    */
+  /*   FreeType 2.                                                         */
   /*                                                                       */
   /*   More details can be found in the files ftmoderr.h and fterrors.h.   */
   /*                                                                       */
-#define FT_CONFIG_OPTION_USE_MODULE_ERRORS
+#undef  FT_CONFIG_OPTION_USE_MODULE_ERRORS
 
 
   /*************************************************************************/
--- a/include/freetype/freetype.h
+++ b/include/freetype/freetype.h
@@ -1360,8 +1360,8 @@
   /*    FT_Open_Flags                                                      */
   /*                                                                       */
   /* <Description>                                                         */
-  /*    An enumeration used to list the bit flags used within              */
-  /*    FT_Open_Args().                                                    */
+  /*    An enumeration used to list the bit flags used within the          */
+  /*    'flags' field of the @FT_Open_Args structure                       */
   /*                                                                       */
   /* <Fields>                                                              */
   /*    ft_open_memory   :: This is a memory-based stream.                 */
@@ -1374,6 +1374,10 @@
   /*                                                                       */
   /*    ft_open_params   :: Use the `num_params' & `params' field.         */
   /*                                                                       */
+  /* <Note>                                                                */
+  /*    the 'ft_open_memory', 'ft_open_stream' and 'ft_open_pathname'      */
+  /*    flags are mutually exclusive..                                     */
+  /*                                                                       */
   typedef enum
   {
     ft_open_memory   = 1,
@@ -1418,7 +1422,7 @@
   /* <Description>                                                         */
   /*    A structure used to indicate how to open a new font file/stream.   */
   /*    A pointer to such a structure can be used as a parameter for the   */
-  /*    functions FT_Open_Face() & FT_Attach_Stream().                     */
+  /*    functions @FT_Open_Face() & @FT_Attach_Stream().                   */
   /*                                                                       */
   /* <Fields>                                                              */
   /*    flags       :: A set of bit flags indicating how to use the        */
@@ -1443,22 +1447,23 @@
   /*                   opening a new face.                                 */
   /*                                                                       */
   /* <Note>                                                                */
-  /*    `stream_type' determines which fields are used to create a new     */
-  /*    input stream.                                                      */
+  /*    the stream type is determined by the content of 'flags', which     */
+  /*    are tested in the following order by @FT_Open_Face:                */
   /*                                                                       */
-  /*    If it is `ft_stream_memory', a new memory-based stream will be     */
-  /*    created using the memory block specified by `memory_base' and      */
-  /*    `memory_size'.                                                     */
+  /*    if the 'ft_open_memory' bit is set, assume that this is a          */
+  /*    memory file, located at 'memory_address', of 'memory_size' bytes   */
   /*                                                                       */
-  /*    If it is `ft_stream_pathname', a new stream will be created with   */
-  /*    the `pathname' field, calling the system-specific FT_New_Stream()  */
-  /*    function.                                                          */
+  /*    otherwise, if the 'ft_open_stream' bit is set, assume that         */
+  /*    a custom input stream is used, a grab it in 'stream'.              */
   /*                                                                       */
-  /*    If is is `ft_stream_copy', then the content of `stream' will be    */
-  /*    copied to a new input stream object.  The object will be closed    */
-  /*    and destroyed when the face is destroyed itself.  Note that this   */
-  /*    means that you should not close the stream before the library      */
-  /*    does!                                                              */
+  /*    otherwise, if the 'ft_open_pathname' bit is set, assume that       */
+  /*    this is a normal file and use the "pathname" to open it.           */
+  /*                                                                       */
+  /*    if the 'ft_open_driver' bit is set, @FT_Open_Face will only        */
+  /*    try to open the file with the driver whose handler is in "driver"  */
+  /*                                                                       */
+  /*    if the 'ft_open_params' bit is set, the parameters given by        */
+  /*    "num_params" and "params" will be used. They're ignored otherwise  */
   /*                                                                       */
   typedef struct  FT_Open_Args_
   {