aboutsummaryrefslogtreecommitdiff
path: root/freetype/src/cff/cf2intrp.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2015-02-22 14:47:01 +0100
committermarha <marha@users.sourceforge.net>2015-02-22 14:47:01 +0100
commit7785694244cdfc5939ca4754cab4e08bd6980f99 (patch)
treee317021c83941073a12d69494425f0dbcbc9eaf8 /freetype/src/cff/cf2intrp.c
parentc9aad1ae6227c434d480d1d3aa8eae3c3c910c18 (diff)
downloadvcxsrv-7785694244cdfc5939ca4754cab4e08bd6980f99.tar.gz
vcxsrv-7785694244cdfc5939ca4754cab4e08bd6980f99.tar.bz2
vcxsrv-7785694244cdfc5939ca4754cab4e08bd6980f99.zip
Upgraded to freetype 2.5.5
Diffstat (limited to 'freetype/src/cff/cf2intrp.c')
-rw-r--r--freetype/src/cff/cf2intrp.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/freetype/src/cff/cf2intrp.c b/freetype/src/cff/cf2intrp.c
index 5610917cc..a26960669 100644
--- a/freetype/src/cff/cf2intrp.c
+++ b/freetype/src/cff/cf2intrp.c
@@ -4,7 +4,7 @@
/* */
/* Adobe's CFF Interpreter (body). */
/* */
-/* Copyright 2007-2013 Adobe Systems Incorporated. */
+/* Copyright 2007-2014 Adobe Systems Incorporated. */
/* */
/* This software, and all works of authorship, whether in source or */
/* object code form as indicated by the copyright notice(s) included */
@@ -593,8 +593,11 @@
/* never add hints after the mask is computed */
if ( cf2_hintmask_isValid( &hintMask ) )
+ {
FT_TRACE4(( "cf2_interpT2CharString:"
" invalid horizontal hint mask\n" ));
+ break;
+ }
cf2_doStems( font,
opStack,
@@ -614,8 +617,11 @@
/* never add hints after the mask is computed */
if ( cf2_hintmask_isValid( &hintMask ) )
+ {
FT_TRACE4(( "cf2_interpT2CharString:"
" invalid vertical hint mask\n" ));
+ break;
+ }
cf2_doStems( font,
opStack,
@@ -1141,15 +1147,16 @@
/* `cf2_hintmask_read' (which also traces the mask bytes) */
FT_TRACE4(( op1 == cf2_cmdCNTRMASK ? " cntrmask" : " hintmask" ));
- /* if there are arguments on the stack, there this is an */
- /* implied cf2_cmdVSTEMHM */
- if ( cf2_stack_count( opStack ) != 0 )
+ /* never add hints after the mask is computed */
+ if ( cf2_stack_count( opStack ) > 1 &&
+ cf2_hintmask_isValid( &hintMask ) )
{
- /* never add hints after the mask is computed */
- if ( cf2_hintmask_isValid( &hintMask ) )
- FT_TRACE4(( "cf2_interpT2CharString: invalid hint mask\n" ));
+ FT_TRACE4(( "cf2_interpT2CharString: invalid hint mask\n" ));
+ break;
}
+ /* if there are arguments on the stack, there this is an */
+ /* implied cf2_cmdVSTEMHM */
cf2_doStems( font,
opStack,
&vStemHintArray,