ref: c321b9b0638031686aaa7af17d836ad6ff8fa582
parent: e0ed07d7674a767b73c69182a4d74ed0bc95cd7e
author: Werner Lemberg <[email protected]>
date: Wed Nov 5 09:34:29 EST 2008
* devel/ftoption.h, include/freetype/config/ftoption.h [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Undefine TT_CONFIG_OPTION_UNPATENTED_HINTING. This fixes the return value of `FT_Get_TrueType_Engine_Type' (and makes it work as documented). Reported in bug #441638 of bugzilla.novell.com. * docs/CHANGES: Document it. Other minor documentation improvements.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2008-11-05 Werner Lemberg <[email protected]>
+
+ * devel/ftoption.h, include/freetype/config/ftoption.h
+ [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Undefine
+ TT_CONFIG_OPTION_UNPATENTED_HINTING. This fixes the return value of
+ `FT_Get_TrueType_Engine_Type' (and makes it work as documented).
+ Reported in bug #441638 of bugzilla.novell.com.
+
+ * docs/CHANGES: Document it.
+
2008-11-03 Werner Lemberg <[email protected]>
* src/type1/t1load.c (parse_subrs): Use an endless loop. There are
--- a/devel/ftoption.h
+++ b/devel/ftoption.h
@@ -488,9 +488,9 @@
/* If you define TT_CONFIG_OPTION_UNPATENTED_HINTING, a special version */
/* of the TrueType bytecode interpreter is used that doesn't implement */
/* any of the patented opcodes and algorithms. Note that the */
- /* the TT_CONFIG_OPTION_UNPATENTED_HINTING macro is *ignored* if you */
- /* define TT_CONFIG_OPTION_BYTECODE_INTERPRETER; in other words, either */
- /* define TT_CONFIG_OPTION_BYTECODE_INTERPRETER or */
+ /* TT_CONFIG_OPTION_UNPATENTED_HINTING macro is *ignored* if you define */
+ /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER; in other words, either define */
+ /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER or */
/* TT_CONFIG_OPTION_UNPATENTED_HINTING but not both at the same time. */
/* */
/* This macro is only useful for a small number of font files (mostly */
@@ -680,6 +680,7 @@
*/
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
#define TT_USE_BYTECODE_INTERPRETER
+#undef TT_CONFIG_OPTION_UNPATENTED_HINTING
#elif defined TT_CONFIG_OPTION_UNPATENTED_HINTING
#define TT_USE_BYTECODE_INTERPRETER
#endif
--- a/docs/CHANGES
+++ b/docs/CHANGES
@@ -10,6 +10,10 @@
was very noticeable for outlines processed with FT_Glyph_Stroke,
using thick strokes.
+ - `FT_Get_TrueType_Engine_Type' returned a wrong value if both
+ TT_CONFIG_OPTION_BYTECODE_INTERPRETER and
+ TT_CONFIG_OPTION_UNPATENTED_HINTING are defined.
+
II. IMPORTANT CHANGES
--- a/include/freetype/config/ftoption.h
+++ b/include/freetype/config/ftoption.h
@@ -488,9 +488,9 @@
/* If you define TT_CONFIG_OPTION_UNPATENTED_HINTING, a special version */
/* of the TrueType bytecode interpreter is used that doesn't implement */
/* any of the patented opcodes and algorithms. Note that the */
- /* the TT_CONFIG_OPTION_UNPATENTED_HINTING macro is *ignored* if you */
- /* define TT_CONFIG_OPTION_BYTECODE_INTERPRETER; in other words, either */
- /* define TT_CONFIG_OPTION_BYTECODE_INTERPRETER or */
+ /* TT_CONFIG_OPTION_UNPATENTED_HINTING macro is *ignored* if you define */
+ /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER; in other words, either define */
+ /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER or */
/* TT_CONFIG_OPTION_UNPATENTED_HINTING but not both at the same time. */
/* */
/* This macro is only useful for a small number of font files (mostly */
@@ -674,11 +674,12 @@
/*
- * This variable is defined if either unpatented or native TrueType
+ * This macro is defined if either unpatented or native TrueType
* hinting is requested by the definitions above.
*/
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
#define TT_USE_BYTECODE_INTERPRETER
+#undef TT_CONFIG_OPTION_UNPATENTED_HINTING
#elif defined TT_CONFIG_OPTION_UNPATENTED_HINTING
#define TT_USE_BYTECODE_INTERPRETER
#endif
--- a/include/freetype/freetype.h
+++ b/include/freetype/freetype.h
@@ -2175,7 +2175,8 @@
/* A character width or height smaller than 1pt is set to 1pt; if */
/* both resolution values are zero, they are set to 72dpi. */
/* */
-
+ /* Don't use this function if you are using the FreeType cache API. */
+ /* */
FT_EXPORT( FT_Error )
FT_Set_Char_Size( FT_Face face,
FT_F26Dot6 char_width,
--- a/include/freetype/ftcache.h
+++ b/include/freetype/ftcache.h
@@ -833,6 +833,9 @@
/* call to one of the caching sub-system APIs. Don't assume that it */
/* is persistent! */
/* */
+ /* Calls to @FT_Set_Char_Size and friends have no effect on cached */
+ /* glyphs; you should always use the FreeType cache API instead. */
+ /* */
FT_EXPORT( FT_Error )
FTC_ImageCache_LookupScaler( FTC_ImageCache cache,
FTC_Scaler scaler,
--- a/include/freetype/ftmodapi.h
+++ b/include/freetype/ftmodapi.h
@@ -412,7 +412,7 @@
* FT_Get_TrueType_Engine_Type
*
* @description:
- * Return a @FT_TrueTypeEngineType value to indicate which level of
+ * Return an @FT_TrueTypeEngineType value to indicate which level of
* the TrueType virtual machine a given library instance supports.
*
* @input: