ref: b75abeb5e6561024d182ccdc0eb36a7d2630310e
parent: 2875ada19766f9559feab3c643026fac57ac2a81
author: Chris Liddell <[email protected]>
date: Tue Jan 8 15:51:39 EST 2019
[psaux] Fix closepath (#55414). All of the Type 1 path building is done with code common to the revised CFF engine, with the exception of closepath, which was still calling ps_builder_close_contour(), thus previously cached segments were not always written to the path, and glyph corruption, or even invalid outlines were possible. * src/psauc/psinterp.c (cf2_interpT2CharString) <cf2_cmdCLOSEPATH>: Switch to calling `cf2_glyphpath_closeOpenPath'.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,16 @@
+2019-01-08 Chris Liddell <[email protected]>
+
+ [psaux] Fix closepath (#55414).
+
+ All of the Type 1 path building is done with code common to the
+ revised CFF engine, with the exception of closepath, which was still
+ calling ps_builder_close_contour(), thus previously cached segments
+ were not always written to the path, and glyph corruption, or even
+ invalid outlines were possible.
+
+ * src/psauc/psinterp.c (cf2_interpT2CharString) <cf2_cmdCLOSEPATH>:
+ Switch to calling `cf2_glyphpath_closeOpenPath'.
+
2018-12-29 Werner Lemberg <[email protected]>
* src/autofit/aflatin2.c: Some fixes from `aflatin.c' (#55310).
--- a/src/psaux/psintrp.c
+++ b/src/psaux/psintrp.c
@@ -963,7 +963,7 @@
FT_TRACE4(( " closepath" ));
/* if there is no path, `closepath' is a no-op */
- ps_builder_close_contour( &decoder->builder );
+ cf2_glyphpath_closeOpenPath( &glyphPath );
haveWidth = TRUE;
}