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 */