Commit e20035ae3ccd24dea3bf111a7b2a6ea6b20953ca

Tom Kacvinsky 2001-03-05T16:22:25

2001-03-05 Tom Kacvinsky <tjk@ams.org> * src/cff/cffgload.c (CFF_Load_Glyph): Set glyph control data to the the Type 2 glyph charstring (used by conversion programs). Submitted by Ha Shao <hashao@chinese.com>.

diff --git a/src/cff/cffgload.c b/src/cff/cffgload.c
index 7b96e68..4805626 100644
--- a/src/cff/cffgload.c
+++ b/src/cff/cffgload.c
@@ -2137,10 +2137,19 @@
                                   &charstring, &charstring_len );
       if ( !error )
       {
+        CFF_Index csindex = cff->charstrings_index;
+
         CFF_Prepare_Decoder( &decoder, glyph_index );
         error = CFF_Parse_CharStrings( &decoder, charstring, charstring_len );
 
         CFF_Forget_Element( &cff->charstrings_index, &charstring );
+
+        /* We set control_data and control_len if charstrings is loaded.  */
+        /* See how charstring loads at CFF_Access_Element() in cffload.c. */
+
+        glyph->root.control_data = csindex.bytes + csindex.offsets[glyph_index] - 1;
+        glyph->root.control_len = charstring_len;
+
       }
 
       /* save new glyph tables */