shithub: freetype+ttf2subf

Download patch

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.

git/fs: mount .git/fs: mount/attach disallowed
--- 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 )
     {