summaryrefslogtreecommitdiff
path: root/Build/source/libs/freetype2/freetype-src/src/cff
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/freetype2/freetype-src/src/cff')
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/Jamfile2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2arrst.h6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2blues.h6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2error.h8
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2fixed.h6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2font.h7
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2ft.h6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2glue.h6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2hints.h6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2intrp.c386
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2intrp.h6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2read.h6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2stack.c84
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2stack.h11
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cf2types.h6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cff.c2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.c2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.h8
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.c2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.h8
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cfferrs.h10
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffgload.c32
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffgload.h8
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffload.c6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffload.h8
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.c5
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.h8
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffparse.c2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffparse.h8
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffpic.c2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cffpic.h8
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cfftoken.h2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/cfftypes.h8
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/module.mk2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/cff/rules.mk2
35 files changed, 498 insertions, 187 deletions
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/Jamfile b/Build/source/libs/freetype2/freetype-src/src/cff/Jamfile
index deec0792ce4..8067e6b29cb 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/Jamfile
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/Jamfile
@@ -1,6 +1,6 @@
# FreeType 2 src/cff Jamfile
#
-# Copyright 2001-2015 by
+# Copyright 2001-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg.
#
# This file is part of the FreeType project, and may only be used, modified,
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2arrst.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2arrst.h
index ff5ad8b1268..3c21a3b6727 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2arrst.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2arrst.h
@@ -36,8 +36,8 @@
/***************************************************************************/
-#ifndef __CF2ARRST_H__
-#define __CF2ARRST_H__
+#ifndef CF2ARRST_H_
+#define CF2ARRST_H_
#include "cf2error.h"
@@ -94,7 +94,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2ARRST_H__ */
+#endif /* CF2ARRST_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2blues.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2blues.h
index 2f38fcad8f5..96fb60f38dc 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2blues.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2blues.h
@@ -65,8 +65,8 @@
*/
-#ifndef __CF2BLUES_H__
-#define __CF2BLUES_H__
+#ifndef CF2BLUES_H_
+#define CF2BLUES_H_
#include "cf2glue.h"
@@ -179,7 +179,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2BLUES_H__ */
+#endif /* CF2BLUES_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2error.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2error.h
index 6453ebcb7b8..d9f8c669f81 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2error.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2error.h
@@ -36,13 +36,13 @@
/***************************************************************************/
-#ifndef __CF2ERROR_H__
-#define __CF2ERROR_H__
+#ifndef CF2ERROR_H_
+#define CF2ERROR_H_
#include FT_MODULE_ERRORS_H
-#undef __FTERRORS_H__
+#undef FTERRORS_H_
#undef FT_ERR_PREFIX
#define FT_ERR_PREFIX CF2_Err_
@@ -113,7 +113,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2ERROR_H__ */
+#endif /* CF2ERROR_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2fixed.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2fixed.h
index d6d9faf8e54..74af37708be 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2fixed.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2fixed.h
@@ -36,8 +36,8 @@
/***************************************************************************/
-#ifndef __CF2FIXED_H__
-#define __CF2FIXED_H__
+#ifndef CF2FIXED_H_
+#define CF2FIXED_H_
FT_BEGIN_HEADER
@@ -89,7 +89,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2FIXED_H__ */
+#endif /* CF2FIXED_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2font.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2font.h
index 86cf02f49d1..bd05e69e7b1 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2font.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2font.h
@@ -36,8 +36,8 @@
/***************************************************************************/
-#ifndef __CF2FONT_H__
-#define __CF2FONT_H__
+#ifndef CF2FONT_H_
+#define CF2FONT_H_
#include "cf2ft.h"
@@ -54,6 +54,7 @@ FT_BEGIN_HEADER
/* (Hiragino Kaku Gothic ProN W3; */
/* 8.2d6e1; 2014-12-19) that exceed */
/* this limit */
+#define CF2_STORAGE_SIZE 32
/* typedef is in `cf2glue.h' */
@@ -115,7 +116,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2FONT_H__ */
+#endif /* CF2FONT_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2ft.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2ft.h
index 98105111b86..8e55e841a0c 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2ft.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2ft.h
@@ -36,8 +36,8 @@
/***************************************************************************/
-#ifndef __CF2FT_H__
-#define __CF2FT_H__
+#ifndef CF2FT_H_
+#define CF2FT_H_
#include "cf2types.h"
@@ -141,7 +141,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2FT_H__ */
+#endif /* CF2FT_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2glue.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2glue.h
index a24da39e93c..56a7c248f4e 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2glue.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2glue.h
@@ -36,8 +36,8 @@
/***************************************************************************/
-#ifndef __CF2GLUE_H__
-#define __CF2GLUE_H__
+#ifndef CF2GLUE_H_
+#define CF2GLUE_H_
/* common includes for other modules */
@@ -138,7 +138,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2GLUE_H__ */
+#endif /* CF2GLUE_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2hints.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2hints.h
index f25d91bf89f..290f57072cf 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2hints.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2hints.h
@@ -36,8 +36,8 @@
/***************************************************************************/
-#ifndef __CF2HINTS_H__
-#define __CF2HINTS_H__
+#ifndef CF2HINTS_H_
+#define CF2HINTS_H_
FT_BEGIN_HEADER
@@ -283,7 +283,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2HINTS_H__ */
+#endif /* CF2HINTS_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2intrp.c b/Build/source/libs/freetype2/freetype-src/src/cff/cf2intrp.c
index 1910f1b87e1..7d663dd0eca 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2intrp.c
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2intrp.c
@@ -293,7 +293,8 @@
/* variable accumulates delta values from operand stack */
CF2_Fixed position = hintOffset;
- if ( hasWidthArg && ! *haveWidth )
+
+ if ( hasWidthArg && !*haveWidth )
*width = cf2_stack_getReal( opStack, 0 ) +
cf2_getNominalWidthX( font->decoder );
@@ -446,6 +447,8 @@
CF2_Stack opStack = NULL;
FT_Byte op1; /* first opcode byte */
+ CF2_F16Dot16 storage[CF2_STORAGE_SIZE]; /* for `put' and `get' */
+
/* instruction limit; 20,000,000 matches Avalon */
FT_UInt32 instructionLimit = 20000000UL;
@@ -608,7 +611,7 @@
0 );
if ( font->decoder->width_only )
- goto exit;
+ goto exit;
break;
@@ -632,7 +635,7 @@
0 );
if ( font->decoder->width_only )
- goto exit;
+ goto exit;
break;
@@ -646,7 +649,7 @@
haveWidth = TRUE;
if ( font->decoder->width_only )
- goto exit;
+ goto exit;
curY += cf2_stack_popFixed( opStack );
@@ -833,84 +836,189 @@
break;
- /* TODO: should these operators be supported? */
- case cf2_escAND: /* in spec */
- FT_TRACE4(( " and\n" ));
+ case cf2_escAND:
+ {
+ CF2_F16Dot16 arg1;
+ CF2_F16Dot16 arg2;
- CF2_FIXME;
- break;
- case cf2_escOR: /* in spec */
- FT_TRACE4(( " or\n" ));
+ FT_TRACE4(( " and\n" ));
- CF2_FIXME;
- break;
+ arg2 = cf2_stack_popFixed( opStack );
+ arg1 = cf2_stack_popFixed( opStack );
- case cf2_escNOT: /* in spec */
- FT_TRACE4(( " not\n" ));
+ cf2_stack_pushInt( opStack, arg1 && arg2 );
+ }
+ continue; /* do not clear the stack */
- CF2_FIXME;
- break;
+ case cf2_escOR:
+ {
+ CF2_F16Dot16 arg1;
+ CF2_F16Dot16 arg2;
- case cf2_escABS: /* in spec */
- FT_TRACE4(( " abs\n" ));
- CF2_FIXME;
- break;
+ FT_TRACE4(( " or\n" ));
- case cf2_escADD: /* in spec */
- FT_TRACE4(( " add\n" ));
+ arg2 = cf2_stack_popFixed( opStack );
+ arg1 = cf2_stack_popFixed( opStack );
- CF2_FIXME;
- break;
+ cf2_stack_pushInt( opStack, arg1 || arg2 );
+ }
+ continue; /* do not clear the stack */
- case cf2_escSUB: /* in spec */
- FT_TRACE4(( " sub\n" ));
+ case cf2_escNOT:
+ {
+ CF2_F16Dot16 arg;
- CF2_FIXME;
- break;
- case cf2_escDIV: /* in spec */
- FT_TRACE4(( " div\n" ));
+ FT_TRACE4(( " not\n" ));
- CF2_FIXME;
- break;
+ arg = cf2_stack_popFixed( opStack );
- case cf2_escNEG: /* in spec */
- FT_TRACE4(( " neg\n" ));
+ cf2_stack_pushInt( opStack, !arg );
+ }
+ continue; /* do not clear the stack */
- CF2_FIXME;
- break;
+ case cf2_escABS:
+ {
+ CF2_F16Dot16 arg;
- case cf2_escEQ: /* in spec */
- FT_TRACE4(( " eq\n" ));
- CF2_FIXME;
- break;
+ FT_TRACE4(( " abs\n" ));
+
+ arg = cf2_stack_popFixed( opStack );
+
+ cf2_stack_pushFixed( opStack, FT_ABS( arg ) );
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escADD:
+ {
+ CF2_F16Dot16 summand1;
+ CF2_F16Dot16 summand2;
+
+
+ FT_TRACE4(( " add\n" ));
+
+ summand2 = cf2_stack_popFixed( opStack );
+ summand1 = cf2_stack_popFixed( opStack );
- case cf2_escDROP: /* in spec */
+ cf2_stack_pushFixed( opStack, summand1 + summand2 );
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escSUB:
+ {
+ CF2_F16Dot16 minuend;
+ CF2_F16Dot16 subtrahend;
+
+
+ FT_TRACE4(( " sub\n" ));
+
+ subtrahend = cf2_stack_popFixed( opStack );
+ minuend = cf2_stack_popFixed( opStack );
+
+ cf2_stack_pushFixed( opStack, minuend - subtrahend );
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escDIV:
+ {
+ CF2_F16Dot16 dividend;
+ CF2_F16Dot16 divisor;
+
+
+ FT_TRACE4(( " div\n" ));
+
+ divisor = cf2_stack_popFixed( opStack );
+ dividend = cf2_stack_popFixed( opStack );
+
+ cf2_stack_pushFixed( opStack, FT_DivFix( dividend, divisor ) );
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escNEG:
+ {
+ CF2_F16Dot16 arg;
+
+
+ FT_TRACE4(( " neg\n" ));
+
+ arg = cf2_stack_popFixed( opStack );
+
+ cf2_stack_pushFixed( opStack, -arg );
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escEQ:
+ {
+ CF2_F16Dot16 arg1;
+ CF2_F16Dot16 arg2;
+
+
+ FT_TRACE4(( " eq\n" ));
+
+ arg2 = cf2_stack_popFixed( opStack );
+ arg1 = cf2_stack_popFixed( opStack );
+
+ cf2_stack_pushInt( opStack, arg1 == arg2 );
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escDROP:
FT_TRACE4(( " drop\n" ));
- CF2_FIXME;
- break;
+ (void)cf2_stack_popFixed( opStack );
+ continue; /* do not clear the stack */
- case cf2_escPUT: /* in spec */
- FT_TRACE4(( " put\n" ));
+ case cf2_escPUT:
+ {
+ CF2_F16Dot16 val;
+ CF2_Int idx;
- CF2_FIXME;
- break;
- case cf2_escGET: /* in spec */
- FT_TRACE4(( " get\n" ));
+ FT_TRACE4(( " put\n" ));
- CF2_FIXME;
- break;
+ idx = cf2_stack_popInt( opStack );
+ val = cf2_stack_popFixed( opStack );
- case cf2_escIFELSE: /* in spec */
- FT_TRACE4(( " ifelse\n" ));
+ if ( idx >= 0 && idx < CF2_STORAGE_SIZE )
+ storage[idx] = val;
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escGET:
+ {
+ CF2_Int idx;
- CF2_FIXME;
- break;
+
+ FT_TRACE4(( " get\n" ));
+
+ idx = cf2_stack_popInt( opStack );
+
+ if ( idx >= 0 && idx < CF2_STORAGE_SIZE )
+ cf2_stack_pushFixed( opStack, storage[idx] );
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escIFELSE:
+ {
+ CF2_F16Dot16 arg1;
+ CF2_F16Dot16 arg2;
+ CF2_F16Dot16 cond1;
+ CF2_F16Dot16 cond2;
+
+
+ FT_TRACE4(( " ifelse\n" ));
+
+ cond2 = cf2_stack_popFixed( opStack );
+ cond1 = cf2_stack_popFixed( opStack );
+ arg2 = cf2_stack_popFixed( opStack );
+ arg1 = cf2_stack_popFixed( opStack );
+
+ cf2_stack_pushFixed( opStack, cond1 <= cond2 ? arg1 : arg2 );
+ }
+ continue; /* do not clear the stack */
case cf2_escRANDOM: /* in spec */
FT_TRACE4(( " random\n" ));
@@ -918,41 +1026,126 @@
CF2_FIXME;
break;
- case cf2_escMUL: /* in spec */
- FT_TRACE4(( " mul\n" ));
+ case cf2_escMUL:
+ {
+ CF2_F16Dot16 factor1;
+ CF2_F16Dot16 factor2;
- CF2_FIXME;
- break;
- case cf2_escSQRT: /* in spec */
- FT_TRACE4(( " sqrt\n" ));
+ FT_TRACE4(( " mul\n" ));
- CF2_FIXME;
- break;
+ factor2 = cf2_stack_popFixed( opStack );
+ factor1 = cf2_stack_popFixed( opStack );
- case cf2_escDUP: /* in spec */
- FT_TRACE4(( " dup\n" ));
+ cf2_stack_pushFixed( opStack, FT_MulFix( factor1, factor2 ) );
+ }
+ continue; /* do not clear the stack */
- CF2_FIXME;
- break;
+ case cf2_escSQRT:
+ {
+ CF2_F16Dot16 arg;
- case cf2_escEXCH: /* in spec */
- FT_TRACE4(( " exch\n" ));
- CF2_FIXME;
- break;
+ FT_TRACE4(( " sqrt\n" ));
+
+ arg = cf2_stack_popFixed( opStack );
+ if ( arg > 0 )
+ {
+ FT_Fixed root = arg;
+ FT_Fixed new_root;
+
+
+ /* Babylonian method */
+ for (;;)
+ {
+ new_root = ( root + FT_DivFix( arg, root ) + 1 ) >> 1;
+ if ( new_root == root )
+ break;
+ root = new_root;
+ }
+ arg = new_root;
+ }
+ else
+ arg = 0;
- case cf2_escINDEX: /* in spec */
- FT_TRACE4(( " index\n" ));
+ cf2_stack_pushFixed( opStack, arg );
+ }
+ continue; /* do not clear the stack */
- CF2_FIXME;
- break;
+ case cf2_escDUP:
+ {
+ CF2_F16Dot16 arg;
- case cf2_escROLL: /* in spec */
- FT_TRACE4(( " roll\n" ));
- CF2_FIXME;
- break;
+ FT_TRACE4(( " dup\n" ));
+
+ arg = cf2_stack_popFixed( opStack );
+
+ cf2_stack_pushFixed( opStack, arg );
+ cf2_stack_pushFixed( opStack, arg );
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escEXCH:
+ {
+ CF2_F16Dot16 arg1;
+ CF2_F16Dot16 arg2;
+
+
+ FT_TRACE4(( " exch\n" ));
+
+ arg2 = cf2_stack_popFixed( opStack );
+ arg1 = cf2_stack_popFixed( opStack );
+
+ cf2_stack_pushFixed( opStack, arg2 );
+ cf2_stack_pushFixed( opStack, arg1 );
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escINDEX:
+ {
+ CF2_Int idx;
+ CF2_UInt size;
+
+
+ FT_TRACE4(( " index\n" ));
+
+ idx = cf2_stack_popInt( opStack );
+ size = cf2_stack_count( opStack );
+
+ if ( size > 0 )
+ {
+ /* for `cf2_stack_getReal', index 0 is bottom of stack */
+ CF2_UInt gr_idx;
+
+
+ if ( idx < 0 )
+ gr_idx = size - 1;
+ else if ( (CF2_UInt)idx >= size )
+ gr_idx = 0;
+ else
+ gr_idx = size - 1 - (CF2_UInt)idx;
+
+ cf2_stack_pushFixed( opStack,
+ cf2_stack_getReal( opStack, gr_idx ) );
+ }
+ }
+ continue; /* do not clear the stack */
+
+ case cf2_escROLL:
+ {
+ CF2_Int idx;
+ CF2_Int count;
+
+
+ FT_TRACE4(( " roll\n" ));
+
+ idx = cf2_stack_popInt( opStack );
+ count = cf2_stack_popInt( opStack );
+
+ cf2_stack_roll( opStack, count, idx );
+ }
+ continue; /* do not clear the stack */
case cf2_escHFLEX:
{
@@ -1085,7 +1278,7 @@
haveWidth = TRUE;
if ( font->decoder->width_only )
- goto exit;
+ goto exit;
/* close path if still open */
cf2_glyphpath_closeOpenPath( &glyphPath );
@@ -1117,8 +1310,8 @@
error2 = cf2_getSeacComponent( decoder, achar, &component );
if ( error2 )
{
- lastError = error2; /* pass FreeType error through */
- goto exit;
+ lastError = error2; /* pass FreeType error through */
+ goto exit;
}
cf2_interpT2CharString( font,
&component,
@@ -1172,7 +1365,7 @@
0 );
if ( font->decoder->width_only )
- goto exit;
+ goto exit;
if ( op1 == cf2_cmdHINTMASK )
{
@@ -1231,7 +1424,7 @@
haveWidth = TRUE;
if ( font->decoder->width_only )
- goto exit;
+ goto exit;
curY += cf2_stack_popFixed( opStack );
curX += cf2_stack_popFixed( opStack );
@@ -1250,7 +1443,7 @@
haveWidth = TRUE;
if ( font->decoder->width_only )
- goto exit;
+ goto exit;
curX += cf2_stack_popFixed( opStack );
@@ -1463,9 +1656,12 @@
{
CF2_Int v;
+ CF2_Int byte1 = cf2_buf_readByte( charstring );
+ CF2_Int byte2 = cf2_buf_readByte( charstring );
- v = (FT_Short)( ( cf2_buf_readByte( charstring ) << 8 ) |
- cf2_buf_readByte( charstring ) );
+
+ v = (FT_Short)( ( byte1 << 8 ) |
+ byte2 );
FT_TRACE4(( " %d", v ));
@@ -1527,12 +1723,16 @@
{
CF2_Fixed v;
+ FT_UInt32 byte1 = (FT_UInt32)cf2_buf_readByte( charstring );
+ FT_UInt32 byte2 = (FT_UInt32)cf2_buf_readByte( charstring );
+ FT_UInt32 byte3 = (FT_UInt32)cf2_buf_readByte( charstring );
+ FT_UInt32 byte4 = (FT_UInt32)cf2_buf_readByte( charstring );
+
- v = (CF2_Fixed)
- ( ( (FT_UInt32)cf2_buf_readByte( charstring ) << 24 ) |
- ( (FT_UInt32)cf2_buf_readByte( charstring ) << 16 ) |
- ( (FT_UInt32)cf2_buf_readByte( charstring ) << 8 ) |
- (FT_UInt32)cf2_buf_readByte( charstring ) );
+ v = (CF2_Fixed)( ( byte1 << 24 ) |
+ ( byte2 << 16 ) |
+ ( byte3 << 8 ) |
+ byte4 );
FT_TRACE4(( " %.2f", v / 65536.0 ));
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2intrp.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2intrp.h
index b5d8947838e..ec030e89444 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2intrp.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2intrp.h
@@ -36,8 +36,8 @@
/***************************************************************************/
-#ifndef __CF2INTRP_H__
-#define __CF2INTRP_H__
+#ifndef CF2INTRP_H_
+#define CF2INTRP_H_
#include "cf2ft.h"
@@ -77,7 +77,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2INTRP_H__ */
+#endif /* CF2INTRP_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2read.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2read.h
index 7ef7c8c1493..b0b0db803a5 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2read.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2read.h
@@ -36,8 +36,8 @@
/***************************************************************************/
-#ifndef __CF2READ_H__
-#define __CF2READ_H__
+#ifndef CF2READ_H_
+#define CF2READ_H_
FT_BEGIN_HEADER
@@ -62,7 +62,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2READ_H__ */
+#endif /* CF2READ_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2stack.c b/Build/source/libs/freetype2/freetype-src/src/cff/cf2stack.c
index 8332b5d91aa..6fafd901f33 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2stack.c
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2stack.c
@@ -145,7 +145,7 @@
/* Note: type mismatch is silently cast */
- /* TODO: check this */
+ /* TODO: check this */
FT_LOCAL_DEF( CF2_Fixed )
cf2_stack_popFixed( CF2_Stack stack )
{
@@ -170,7 +170,7 @@
/* Note: type mismatch is silently cast */
- /* TODO: check this */
+ /* TODO: check this */
FT_LOCAL_DEF( CF2_Fixed )
cf2_stack_getReal( CF2_Stack stack,
CF2_UInt idx )
@@ -195,6 +195,86 @@
}
+ FT_LOCAL( void )
+ cf2_stack_roll( CF2_Stack stack,
+ CF2_Int count,
+ CF2_Int shift )
+ {
+ /* we initialize this variable to avoid compiler warnings */
+ CF2_StackNumber last = { { 0 }, CF2_NumberInt };
+
+ CF2_Int start_idx, idx, i;
+
+
+ if ( count < 2 )
+ return; /* nothing to do (values 0 and 1), or undefined value */
+
+ if ( (CF2_UInt)count > cf2_stack_count( stack ) )
+ {
+ CF2_SET_ERROR( stack->error, Stack_Overflow );
+ return;
+ }
+
+ if ( shift < 0 )
+ shift = -( ( -shift ) % count );
+ else
+ shift %= count;
+
+ if ( shift == 0 )
+ return; /* nothing to do */
+
+ /* We use the following algorithm to do the rolling, */
+ /* which needs two temporary variables only. */
+ /* */
+ /* Example: */
+ /* */
+ /* count = 8 */
+ /* shift = 2 */
+ /* */
+ /* stack indices before roll: 7 6 5 4 3 2 1 0 */
+ /* stack indices after roll: 1 0 7 6 5 4 3 2 */
+ /* */
+ /* The value of index 0 gets moved to index 2, while */
+ /* the old value of index 2 gets moved to index 4, */
+ /* and so on. We thus have the following copying */
+ /* chains for shift value 2. */
+ /* */
+ /* 0 -> 2 -> 4 -> 6 -> 0 */
+ /* 1 -> 3 -> 5 -> 7 -> 1 */
+ /* */
+ /* If `count' and `shift' are incommensurable, we */
+ /* have a single chain only. Otherwise, increase */
+ /* the start index by 1 after the first chain, then */
+ /* do the next chain until all elements in all */
+ /* chains are handled. */
+
+ start_idx = -1;
+ idx = -1;
+ for ( i = 0; i < count; i++ )
+ {
+ CF2_StackNumber tmp;
+
+
+ if ( start_idx == idx )
+ {
+ start_idx++;
+ idx = start_idx;
+ last = stack->buffer[idx];
+ }
+
+ idx += shift;
+ if ( idx >= count )
+ idx -= count;
+ else if ( idx < 0 )
+ idx += count;
+
+ tmp = stack->buffer[idx];
+ stack->buffer[idx] = last;
+ last = tmp;
+ }
+ }
+
+
FT_LOCAL_DEF( void )
cf2_stack_clear( CF2_Stack stack )
{
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2stack.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2stack.h
index 7d6d1961fe9..e740a7ac410 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2stack.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2stack.h
@@ -36,8 +36,8 @@
/***************************************************************************/
-#ifndef __CF2STACK_H__
-#define __CF2STACK_H__
+#ifndef CF2STACK_H_
+#define CF2STACK_H_
FT_BEGIN_HEADER
@@ -94,13 +94,18 @@ FT_BEGIN_HEADER
CF2_UInt idx );
FT_LOCAL( void )
+ cf2_stack_roll( CF2_Stack stack,
+ CF2_Int count,
+ CF2_Int idx );
+
+ FT_LOCAL( void )
cf2_stack_clear( CF2_Stack stack );
FT_END_HEADER
-#endif /* __CF2STACK_H__ */
+#endif /* CF2STACK_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cf2types.h b/Build/source/libs/freetype2/freetype-src/src/cff/cf2types.h
index ac6a02266e7..5b7e1239af3 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cf2types.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cf2types.h
@@ -36,8 +36,8 @@
/***************************************************************************/
-#ifndef __CF2TYPES_H__
-#define __CF2TYPES_H__
+#ifndef CF2TYPES_H_
+#define CF2TYPES_H_
#include <ft2build.h>
#include FT_FREETYPE_H
@@ -72,7 +72,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CF2TYPES_H__ */
+#endif /* CF2TYPES_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cff.c b/Build/source/libs/freetype2/freetype-src/src/cff/cff.c
index bb2cfb52531..86ca1be0403 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cff.c
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cff.c
@@ -4,7 +4,7 @@
/* */
/* FreeType OpenType driver component (body only). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.c b/Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.c
index e7538e98405..3ef48328c59 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.c
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.c
@@ -4,7 +4,7 @@
/* */
/* CFF character mapping table (cmap) support (body). */
/* */
-/* Copyright 2002-2015 by */
+/* Copyright 2002-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.h b/Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.h
index 6eaed636ec0..23795d50905 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffcmap.h
@@ -4,7 +4,7 @@
/* */
/* CFF character mapping table (cmap) support (specification). */
/* */
-/* Copyright 2002-2015 by */
+/* Copyright 2002-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -16,8 +16,8 @@
/***************************************************************************/
-#ifndef __CFFCMAP_H__
-#define __CFFCMAP_H__
+#ifndef CFFCMAP_H_
+#define CFFCMAP_H_
#include "cffobjs.h"
@@ -61,7 +61,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CFFCMAP_H__ */
+#endif /* CFFCMAP_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.c b/Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.c
index 9a06b7c8322..7a820940da0 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.c
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.c
@@ -4,7 +4,7 @@
/* */
/* OpenType font driver implementation (body). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.h b/Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.h
index 9527f5e1495..d7b05983748 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffdrivr.h
@@ -4,7 +4,7 @@
/* */
/* High-level OpenType driver interface (specification). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -16,8 +16,8 @@
/***************************************************************************/
-#ifndef __CFFDRIVER_H__
-#define __CFFDRIVER_H__
+#ifndef CFFDRIVER_H_
+#define CFFDRIVER_H_
#include <ft2build.h>
@@ -32,7 +32,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CFFDRIVER_H__ */
+#endif /* CFFDRIVER_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cfferrs.h b/Build/source/libs/freetype2/freetype-src/src/cff/cfferrs.h
index 543bdb07c23..e7fc6eb71c8 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cfferrs.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cfferrs.h
@@ -4,7 +4,7 @@
/* */
/* CFF error codes (specification only). */
/* */
-/* Copyright 2001-2015 by */
+/* Copyright 2001-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -22,12 +22,12 @@
/* */
/*************************************************************************/
-#ifndef __CFFERRS_H__
-#define __CFFERRS_H__
+#ifndef CFFERRS_H_
+#define CFFERRS_H_
#include FT_MODULE_ERRORS_H
-#undef __FTERRORS_H__
+#undef FTERRORS_H_
#undef FT_ERR_PREFIX
#define FT_ERR_PREFIX CFF_Err_
@@ -36,7 +36,7 @@
#include FT_ERRORS_H
-#endif /* __CFFERRS_H__ */
+#endif /* CFFERRS_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffgload.c b/Build/source/libs/freetype2/freetype-src/src/cff/cffgload.c
index 5f57403e22a..df57d67e57f 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffgload.c
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffgload.c
@@ -4,7 +4,7 @@
/* */
/* OpenType Glyph Loader (body). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -2082,15 +2082,14 @@
if ( args[0] > 0 )
{
- FT_Int count = 9;
- FT_Fixed root = args[0];
+ FT_Fixed root = args[0];
FT_Fixed new_root;
for (;;)
{
new_root = ( root + FT_DivFix( args[0], root ) + 1 ) >> 1;
- if ( new_root == root || count <= 0 )
+ if ( new_root == root )
break;
root = new_root;
}
@@ -2221,15 +2220,26 @@
break;
case cff_op_store:
+ /* this operator was removed from the Type2 specification */
+ /* in version 16-March-2000 */
FT_TRACE4(( " store\n"));
goto Unimplemented;
case cff_op_load:
+ /* this operator was removed from the Type2 specification */
+ /* in version 16-March-2000 */
FT_TRACE4(( " load\n" ));
goto Unimplemented;
+ case cff_op_blend:
+ /* this operator was removed from the Type2 specification */
+ /* in version 16-March-2000 */
+ FT_TRACE4(( " blend\n" ));
+
+ goto Unimplemented;
+
case cff_op_dotsection:
/* this operator is deprecated and ignored by the parser */
FT_TRACE4(( " dotsection\n" ));
@@ -2358,11 +2368,23 @@
}
break;
- case cff_op_eq:
+ case cff_op_not:
{
FT_Fixed cond = !args[0];
+ FT_TRACE4(( " not\n" ));
+
+ args[0] = cond ? 0x10000L : 0;
+ args++;
+ }
+ break;
+
+ case cff_op_eq:
+ {
+ FT_Fixed cond = args[0] == args[1];
+
+
FT_TRACE4(( " eq\n" ));
args[0] = cond ? 0x10000L : 0;
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffgload.h b/Build/source/libs/freetype2/freetype-src/src/cff/cffgload.h
index 5f2655f3d98..2257307eee5 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffgload.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffgload.h
@@ -4,7 +4,7 @@
/* */
/* OpenType Glyph Loader (specification). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -16,8 +16,8 @@
/***************************************************************************/
-#ifndef __CFFGLOAD_H__
-#define __CFFGLOAD_H__
+#ifndef CFFGLOAD_H_
+#define CFFGLOAD_H_
#include <ft2build.h>
@@ -239,7 +239,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CFFGLOAD_H__ */
+#endif /* CFFGLOAD_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffload.c b/Build/source/libs/freetype2/freetype-src/src/cff/cffload.c
index c61222d6519..42cc37e1aa1 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffload.c
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffload.c
@@ -4,7 +4,7 @@
/* */
/* OpenType and CFF data/program tables loader (body). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -501,8 +501,8 @@
{
element++;
off2 = cff_index_read_offset( idx, &error );
- }
- while ( off2 == 0 && element < idx->count );
+
+ } while ( off2 == 0 && element < idx->count );
}
}
else /* use offsets table */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffload.h b/Build/source/libs/freetype2/freetype-src/src/cff/cffload.h
index 459e7b04461..1dd07baf112 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffload.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffload.h
@@ -4,7 +4,7 @@
/* */
/* OpenType & CFF data/program tables loader (specification). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -16,8 +16,8 @@
/***************************************************************************/
-#ifndef __CFFLOAD_H__
-#define __CFFLOAD_H__
+#ifndef CFFLOAD_H_
+#define CFFLOAD_H_
#include <ft2build.h>
@@ -77,7 +77,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CFFLOAD_H__ */
+#endif /* CFFLOAD_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.c b/Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.c
index d628b68db7c..e22ae82bcf1 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.c
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.c
@@ -4,7 +4,7 @@
/* */
/* OpenType objects manager (body). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -586,7 +586,10 @@
/* if we are performing a simple font format check, exit immediately */
/* (this is here for pure CFF) */
if ( face_index < 0 )
+ {
+ cffface->num_faces = (FT_Long)cff->num_faces;
return FT_Err_Ok;
+ }
cff->pshinter = pshinter;
cff->psnames = psnames;
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.h b/Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.h
index 3cc953143b6..9dc77536bd8 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffobjs.h
@@ -4,7 +4,7 @@
/* */
/* OpenType objects manager (specification). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -16,8 +16,8 @@
/***************************************************************************/
-#ifndef __CFFOBJS_H__
-#define __CFFOBJS_H__
+#ifndef CFFOBJS_H_
+#define CFFOBJS_H_
#include <ft2build.h>
@@ -179,7 +179,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CFFOBJS_H__ */
+#endif /* CFFOBJS_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffparse.c b/Build/source/libs/freetype2/freetype-src/src/cff/cffparse.c
index 063b3517c53..acbdc5a821d 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffparse.c
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffparse.c
@@ -4,7 +4,7 @@
/* */
/* CFF token stream parser (body) */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffparse.h b/Build/source/libs/freetype2/freetype-src/src/cff/cffparse.h
index 8ad02ea1e25..bb9425ac71c 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffparse.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffparse.h
@@ -4,7 +4,7 @@
/* */
/* CFF token stream parser (specification) */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -16,8 +16,8 @@
/***************************************************************************/
-#ifndef __CFF_PARSE_H__
-#define __CFF_PARSE_H__
+#ifndef CFFPARSE_H_
+#define CFFPARSE_H_
#include <ft2build.h>
@@ -100,7 +100,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CFF_PARSE_H__ */
+#endif /* CFFPARSE_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffpic.c b/Build/source/libs/freetype2/freetype-src/src/cff/cffpic.c
index d40dec50e9d..a0bc34fd5f3 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffpic.c
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffpic.c
@@ -4,7 +4,7 @@
/* */
/* The FreeType position independent code services for cff module. */
/* */
-/* Copyright 2009-2015 by */
+/* Copyright 2009-2016 by */
/* Oran Agra and Mickey Gabel. */
/* */
/* This file is part of the FreeType project, and may only be used, */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cffpic.h b/Build/source/libs/freetype2/freetype-src/src/cff/cffpic.h
index 9a221a7b7ee..bed6b35a863 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cffpic.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cffpic.h
@@ -4,7 +4,7 @@
/* */
/* The FreeType position independent code services for cff module. */
/* */
-/* Copyright 2009-2015 by */
+/* Copyright 2009-2016 by */
/* Oran Agra and Mickey Gabel. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -16,8 +16,8 @@
/***************************************************************************/
-#ifndef __CFFPIC_H__
-#define __CFFPIC_H__
+#ifndef CFFPIC_H_
+#define CFFPIC_H_
#include FT_INTERNAL_PIC_H
@@ -102,7 +102,7 @@ FT_END_HEADER
/* */
-#endif /* __CFFPIC_H__ */
+#endif /* CFFPIC_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cfftoken.h b/Build/source/libs/freetype2/freetype-src/src/cff/cfftoken.h
index 5b32076ab8f..44b65805b50 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cfftoken.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cfftoken.h
@@ -4,7 +4,7 @@
/* */
/* CFF token definitions (specification only). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/cfftypes.h b/Build/source/libs/freetype2/freetype-src/src/cff/cfftypes.h
index de8a5ee9b44..80f13fe2ca6 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/cfftypes.h
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/cfftypes.h
@@ -5,7 +5,7 @@
/* Basic OpenType/CFF type definitions and interface (specification */
/* only). */
/* */
-/* Copyright 1996-2015 by */
+/* Copyright 1996-2016 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -17,8 +17,8 @@
/***************************************************************************/
-#ifndef __CFFTYPES_H__
-#define __CFFTYPES_H__
+#ifndef CFFTYPES_H_
+#define CFFTYPES_H_
#include <ft2build.h>
@@ -278,7 +278,7 @@ FT_BEGIN_HEADER
FT_END_HEADER
-#endif /* __CFFTYPES_H__ */
+#endif /* CFFTYPES_H_ */
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/module.mk b/Build/source/libs/freetype2/freetype-src/src/cff/module.mk
index ba08ebcb79d..1b4781afed7 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/module.mk
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/module.mk
@@ -3,7 +3,7 @@
#
-# Copyright 1996-2015 by
+# Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg.
#
# This file is part of the FreeType project, and may only be used, modified,
diff --git a/Build/source/libs/freetype2/freetype-src/src/cff/rules.mk b/Build/source/libs/freetype2/freetype-src/src/cff/rules.mk
index 7f6e857e28b..92f68b1edef 100644
--- a/Build/source/libs/freetype2/freetype-src/src/cff/rules.mk
+++ b/Build/source/libs/freetype2/freetype-src/src/cff/rules.mk
@@ -3,7 +3,7 @@
#
-# Copyright 1996-2015 by
+# Copyright 1996-2016 by
# David Turner, Robert Wilhelm, and Werner Lemberg.
#
# This file is part of the FreeType project, and may only be used, modified,