shithub: freetype+ttf2subf

Download patch

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'.

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