summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexei Podtelezhnikov <apodtele@gmail.com>2023-02-27 21:54:23 -0500
committerAlexei Podtelezhnikov <apodtele@gmail.com>2023-02-27 21:54:23 -0500
commit638df2fe32b847d565419fb9becd9f1dccf3429a (patch)
treedb40f7976c7e361fdb5b62c1b35f2e0aaa49b24b
parent2257f9abf6e12daf7c3e1bfe28fa88de85e45785 (diff)
downloadfreetype2-638df2fe32b847d565419fb9becd9f1dccf3429a.tar.gz
[truetype] Treat 38 as 40 without Infinality.
* include/freetype/ftdriver.h (TT_INTERPRETER_VERSION_38): Reinstate. * src/truetype/ttdriver.c (tt_property_set): Fallback from 38 to 40.
-rw-r--r--include/freetype/ftdriver.h2
-rw-r--r--src/truetype/ttdriver.c22
2 files changed, 17 insertions, 7 deletions
diff --git a/include/freetype/ftdriver.h b/include/freetype/ftdriver.h
index 4ed8b59d7..59804ab1a 100644
--- a/include/freetype/ftdriver.h
+++ b/include/freetype/ftdriver.h
@@ -757,7 +757,7 @@ FT_BEGIN_HEADER
*
*/
#define TT_INTERPRETER_VERSION_35 35
-#define TT_INTERPRETER_VERSION_38 40
+#define TT_INTERPRETER_VERSION_38 38
#define TT_INTERPRETER_VERSION_40 40
diff --git a/src/truetype/ttdriver.c b/src/truetype/ttdriver.c
index 4bea63ef8..4e689e99a 100644
--- a/src/truetype/ttdriver.c
+++ b/src/truetype/ttdriver.c
@@ -93,17 +93,27 @@
interpreter_version = *iv;
}
- if ( interpreter_version == TT_INTERPRETER_VERSION_35
+ switch ( interpreter_version )
+ {
+ case TT_INTERPRETER_VERSION_35:
+ driver->interpreter_version = TT_INTERPRETER_VERSION_35;
+ break;
+
+ case TT_INTERPRETER_VERSION_38:
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY
- || interpreter_version == TT_INTERPRETER_VERSION_38
+ driver->interpreter_version = TT_INTERPRETER_VERSION_38;
+ break;
#endif
+
+ case TT_INTERPRETER_VERSION_40:
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
- || interpreter_version == TT_INTERPRETER_VERSION_40
+ driver->interpreter_version = TT_INTERPRETER_VERSION_40;
+ break;
#endif
- )
- driver->interpreter_version = interpreter_version;
- else
+
+ default:
error = FT_ERR( Unimplemented_Feature );
+ }
return error;
}