[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'.
This commit is contained in:
Chris Liddell 2019-01-08 20:51:39 -05:00 committed by Alexei Podtelezhnikov
parent 2875ada197
commit b75abeb5e6
2 changed files with 14 additions and 1 deletions

View File

@ -1,3 +1,16 @@
2019-01-08 Chris Liddell <chris.liddell@artifex.com>
[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 <wl@gnu.org>
* src/autofit/aflatin2.c: Some fixes from `aflatin.c' (#55310).

View File

@ -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;
}