ref: 6bb34880e87235dc0f51d2bbf1c5f48cd7cd407e
parent: a7e5a335f26aad2d2c299f4d3c547d655328ad34
author: Werner Lemberg <[email protected]>
date: Sat Jun 27 20:43:37 EDT 2009
Thinko. * src/psaux/t1decode.c (t1operator_seac) [FT_CONFIG_OPTION_INCREMENTAL]: Test for existence of incremental interface.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
2009-06-28 Werner Lemberg <[email protected]>
+ Thinko.
+
+ * src/psaux/t1decode.c (t1operator_seac)
+ [FT_CONFIG_OPTION_INCREMENTAL]: Test for existence of incremental
+ interface.
+
+2009-06-28 Werner Lemberg <[email protected]>
+
* devel/ftoption.h [FT_CONFIG_OPTION_INCREMENTAL]: Define.
2009-06-27 suzuki toshiya <[email protected]>
--- a/src/psaux/t1decode.c
+++ b/src/psaux/t1decode.c
@@ -194,6 +194,9 @@
#endif
FT_Vector left_bearing, advance;
+#ifdef FT_CONFIG_OPTION_INCREMENTAL
+ T1_Face face = (T1_Face)decoder->builder.face;
+#endif
/* seac weirdness */
adx += decoder->builder.left_bearing.x;
@@ -208,17 +211,18 @@
}
#ifdef FT_CONFIG_OPTION_INCREMENTAL
-
- /* the caller must handle the font encoding also */
- bchar_index = bchar;
- achar_index = achar;
-
-#else
-
- bchar_index = t1_lookup_glyph_by_stdcharcode( decoder, bchar );
- achar_index = t1_lookup_glyph_by_stdcharcode( decoder, achar );
-
+ if ( face->root.internal->incremental_interface )
+ {
+ /* the caller must handle the font encoding also */
+ bchar_index = bchar;
+ achar_index = achar;
+ }
+ else
#endif
+ {
+ bchar_index = t1_lookup_glyph_by_stdcharcode( decoder, bchar );
+ achar_index = t1_lookup_glyph_by_stdcharcode( decoder, achar );
+ }
if ( bchar_index < 0 || achar_index < 0 )
{