summaryrefslogtreecommitdiff
path: root/Build/source/libs/freetype2/freetype-src/src/psaux
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2020-10-11 03:30:45 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2020-10-11 03:30:45 +0000
commit818cc5aef331bbea8e3f51fde0d16930d3c7d61b (patch)
tree92e75c5790929645b7f7fe46531d08bd6da647fe /Build/source/libs/freetype2/freetype-src/src/psaux
parentda07ca4d5d2822da52a86feffa09e8cf2b9484bd (diff)
freetype 2.10.3
git-svn-id: svn://tug.org/texlive/trunk@56628 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/libs/freetype2/freetype-src/src/psaux')
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/Jamfile45
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.c7
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.h3
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.c9
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.h3
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psarrst.c2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psaux.c1
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psauxerr.h4
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.c9
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.h19
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psblues.c2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psconv.c5
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psconv.h3
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/pserror.h5
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psfont.c3
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psfont.h2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psft.c8
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psft.h6
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/pshints.c4
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psintrp.c4
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.c13
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.h5
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psread.c2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psstack.c14
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/psstack.h1
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/pstypes.h3
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.c2
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.h5
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.c134
-rw-r--r--Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.h5
30 files changed, 190 insertions, 138 deletions
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/Jamfile b/Build/source/libs/freetype2/freetype-src/src/psaux/Jamfile
deleted file mode 100644
index 9a13816cb42..00000000000
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/Jamfile
+++ /dev/null
@@ -1,45 +0,0 @@
-# FreeType 2 src/psaux Jamfile
-#
-# Copyright (C) 2001-2020 by
-# David Turner, Robert Wilhelm, and Werner Lemberg.
-#
-# This file is part of the FreeType project, and may only be used, modified,
-# and distributed under the terms of the FreeType project license,
-# LICENSE.TXT. By continuing to use, modify, or distribute this file you
-# indicate that you have read the license and understand and accept it
-# fully.
-
-SubDir FT2_TOP $(FT2_SRC_DIR) psaux ;
-
-{
- local _sources ;
-
- if $(FT2_MULTI)
- {
- _sources = afmparse
- psauxmod
- psconv
- psobjs
- t1cmap
- t1decode
- cffdecode
- psarrst
- psblues
- pserror
- psfont
- psft
- pshints
- psintrp
- psread
- psstack
- ;
- }
- else
- {
- _sources = psaux ;
- }
-
- Library $(FT2_LIB) : $(_sources).c ;
-}
-
-# end of src/psaux Jamfile
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.c b/Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.c
index b957158aec2..2d6a0d9a121 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.c
@@ -15,10 +15,9 @@
*
*/
-#include <ft2build.h>
-#include FT_FREETYPE_H
-#include FT_INTERNAL_DEBUG_H
-#include FT_INTERNAL_POSTSCRIPT_AUX_H
+#include <freetype/freetype.h>
+#include <freetype/internal/ftdebug.h>
+#include <freetype/internal/psaux.h>
#ifndef T1_CONFIG_OPTION_NO_AFM
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.h b/Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.h
index 50f4834b3f7..16a3a3e902d 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/afmparse.h
@@ -20,8 +20,7 @@
#define AFMPARSE_H_
-#include <ft2build.h>
-#include FT_INTERNAL_POSTSCRIPT_AUX_H
+#include <freetype/internal/psaux.h>
FT_BEGIN_HEADER
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.c b/Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.c
index 172e3b23a3c..3d2da1e03ca 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.c
@@ -16,11 +16,10 @@
*/
-#include <ft2build.h>
-#include FT_FREETYPE_H
-#include FT_INTERNAL_DEBUG_H
-#include FT_INTERNAL_SERVICE_H
-#include FT_SERVICE_CFF_TABLE_LOAD_H
+#include <freetype/freetype.h>
+#include <freetype/internal/ftdebug.h>
+#include <freetype/internal/ftserv.h>
+#include <freetype/internal/services/svcfftl.h>
#include "cffdecode.h"
#include "psobjs.h"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.h b/Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.h
index 5dc968b255c..77a4962698b 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/cffdecode.h
@@ -20,8 +20,7 @@
#define CFFDECODE_H_
-#include <ft2build.h>
-#include FT_INTERNAL_POSTSCRIPT_AUX_H
+#include <freetype/internal/psaux.h>
FT_BEGIN_HEADER
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psarrst.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psarrst.c
index 011803b4161..8751d275fb9 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psarrst.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psarrst.c
@@ -37,7 +37,7 @@
#include "psft.h"
-#include FT_INTERNAL_DEBUG_H
+#include <freetype/internal/ftdebug.h>
#include "psglue.h"
#include "psarrst.h"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psaux.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psaux.c
index 96d2484e9d8..f4282222a68 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psaux.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psaux.c
@@ -17,7 +17,6 @@
#define FT_MAKE_OPTION_SINGLE_OBJECT
-#include <ft2build.h>
#include "afmparse.c"
#include "psauxmod.c"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psauxerr.h b/Build/source/libs/freetype2/freetype-src/src/psaux/psauxerr.h
index df8b09ff78a..8b9a958aec0 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psauxerr.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psauxerr.h
@@ -26,7 +26,7 @@
#ifndef PSAUXERR_H_
#define PSAUXERR_H_
-#include FT_MODULE_ERRORS_H
+#include <freetype/ftmoderr.h>
#undef FTERRORS_H_
@@ -34,7 +34,7 @@
#define FT_ERR_PREFIX PSaux_Err_
#define FT_ERR_BASE FT_Mod_Err_PSaux
-#include FT_ERRORS_H
+#include <freetype/fterrors.h>
#endif /* PSAUXERR_H_ */
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.c
index bb520792e00..e73ba224517 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.c
@@ -16,7 +16,6 @@
*/
-#include <ft2build.h>
#include "psauxmod.h"
#include "psobjs.h"
#include "t1decode.h"
@@ -171,9 +170,9 @@
};
- FT_CALLBACK_TABLE_DEF
- const FT_Module_Class psaux_module_class =
- {
+ FT_DEFINE_MODULE(
+ psaux_module_class,
+
0,
sizeof ( FT_ModuleRec ),
"psaux",
@@ -185,7 +184,7 @@
(FT_Module_Constructor)NULL, /* module_init */
(FT_Module_Destructor) NULL, /* module_done */
(FT_Module_Requester) NULL /* get_interface */
- };
+ )
/* END */
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.h b/Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.h
index 6e2eb670424..a6bebe4b945 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psauxmod.h
@@ -20,10 +20,9 @@
#define PSAUXMOD_H_
-#include <ft2build.h>
-#include FT_MODULE_H
+#include <freetype/ftmodapi.h>
-#include FT_INTERNAL_POSTSCRIPT_AUX_H
+#include <freetype/internal/psaux.h>
FT_BEGIN_HEADER
@@ -35,10 +34,24 @@ FT_BEGIN_HEADER
FT_CALLBACK_TABLE
const PS_Builder_FuncsRec ps_builder_funcs;
+#ifndef T1_CONFIG_OPTION_NO_AFM
+ FT_CALLBACK_TABLE
+ const AFM_Parser_FuncsRec afm_parser_funcs;
+#endif
+
+ FT_CALLBACK_TABLE
+ const T1_CMap_ClassesRec t1_cmap_classes;
+
+ FT_CALLBACK_TABLE
+ const CFF_Decoder_FuncsRec cff_decoder_funcs;
+
FT_EXPORT_VAR( const FT_Module_Class ) psaux_driver_class;
+ FT_DECLARE_MODULE( psaux_module_class )
+
+
FT_END_HEADER
#endif /* PSAUXMOD_H_ */
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psblues.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psblues.c
index 89738ce4749..3878e9bde04 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psblues.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psblues.c
@@ -37,7 +37,7 @@
#include "psft.h"
-#include FT_INTERNAL_DEBUG_H
+#include <freetype/internal/ftdebug.h>
#include "psblues.h"
#include "pshints.h"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psconv.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psconv.c
index c813a0596ca..4cf5cd5d881 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psconv.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psconv.c
@@ -16,9 +16,8 @@
*/
-#include <ft2build.h>
-#include FT_INTERNAL_POSTSCRIPT_AUX_H
-#include FT_INTERNAL_DEBUG_H
+#include <freetype/internal/psaux.h>
+#include <freetype/internal/ftdebug.h>
#include "psconv.h"
#include "psauxerr.h"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psconv.h b/Build/source/libs/freetype2/freetype-src/src/psaux/psconv.h
index 2cd5c60e4b2..833e8273648 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psconv.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psconv.h
@@ -20,8 +20,7 @@
#define PSCONV_H_
-#include <ft2build.h>
-#include FT_INTERNAL_POSTSCRIPT_AUX_H
+#include <freetype/internal/psaux.h>
FT_BEGIN_HEADER
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/pserror.h b/Build/source/libs/freetype2/freetype-src/src/psaux/pserror.h
index b2156b3318b..5738853face 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/pserror.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/pserror.h
@@ -40,7 +40,7 @@
#define PSERROR_H_
-#include FT_MODULE_ERRORS_H
+#include <freetype/ftmoderr.h>
#undef FTERRORS_H_
@@ -49,7 +49,8 @@
#define FT_ERR_BASE FT_Mod_Err_CF2
-#include FT_ERRORS_H
+#include <freetype/fterrors.h>
+#include <freetype/internal/compiler-macros.h>
#include "psft.h"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psfont.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psfont.c
index 00e42108193..0db1f0c5bc4 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psfont.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psfont.c
@@ -36,8 +36,7 @@
*/
-#include <ft2build.h>
-#include FT_INTERNAL_CALC_H
+#include <freetype/internal/ftcalc.h>
#include "psft.h"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psfont.h b/Build/source/libs/freetype2/freetype-src/src/psaux/psfont.h
index 8fbacbb6e34..836fce4e4d3 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psfont.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psfont.h
@@ -40,7 +40,7 @@
#define PSFONT_H_
-#include FT_SERVICE_CFF_TABLE_LOAD_H
+#include <freetype/internal/services/svcfftl.h>
#include "psft.h"
#include "psblues.h"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psft.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psft.c
index 50b40bf8fe1..41c16542c17 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psft.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psft.c
@@ -37,7 +37,7 @@
#include "psft.h"
-#include FT_INTERNAL_DEBUG_H
+#include <freetype/internal/ftdebug.h>
#include "psfont.h"
#include "pserror.h"
@@ -45,11 +45,11 @@
#include "cffdecode.h"
#ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
-#include FT_MULTIPLE_MASTERS_H
-#include FT_SERVICE_MULTIPLE_MASTERS_H
+#include <freetype/ftmm.h>
+#include <freetype/internal/services/svmm.h>
#endif
-#include FT_SERVICE_CFF_TABLE_LOAD_H
+#include <freetype/internal/services/svcfftl.h>
#define CF2_MAX_SIZE cf2_intToFixed( 2000 ) /* max ppem */
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psft.h b/Build/source/libs/freetype2/freetype-src/src/psaux/psft.h
index 4c930f0d73f..3da454e6012 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psft.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psft.h
@@ -40,17 +40,17 @@
#define PSFT_H_
+#include <freetype/internal/compiler-macros.h>
#include "pstypes.h"
-
/* TODO: disable asserts for now */
#define CF2_NDEBUG
-#include FT_SYSTEM_H
+#include <freetype/ftsystem.h>
#include "psglue.h"
-#include FT_INTERNAL_POSTSCRIPT_AUX_H /* for PS_Decoder */
+#include <freetype/internal/psaux.h> /* for PS_Decoder */
FT_BEGIN_HEADER
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/pshints.c b/Build/source/libs/freetype2/freetype-src/src/psaux/pshints.c
index 1cbecd2b193..ce8cfca7154 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/pshints.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/pshints.c
@@ -37,7 +37,7 @@
#include "psft.h"
-#include FT_INTERNAL_DEBUG_H
+#include <freetype/internal/ftdebug.h>
#include "psglue.h"
#include "psfont.h"
@@ -310,7 +310,7 @@
CF2_Hint hint = &hintmap->edge[i];
- FT_TRACE6(( " %3d %7.2f %7.2f %5d %s%s%s%s\n",
+ FT_TRACE6(( " %3ld %7.2f %7.2f %5d %s%s%s%s\n",
hint->index,
hint->csCoord / 65536.0,
hint->dsCoord / ( hint->scale * 1.0 ),
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psintrp.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psintrp.c
index 0a841455350..519c6944475 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psintrp.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psintrp.c
@@ -37,8 +37,8 @@
#include "psft.h"
-#include FT_INTERNAL_DEBUG_H
-#include FT_SERVICE_CFF_TABLE_LOAD_H
+#include <freetype/internal/ftdebug.h>
+#include <freetype/internal/services/svcfftl.h>
#include "psglue.h"
#include "psfont.h"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.c
index b37a78832c9..defc4d4fcee 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.c
@@ -16,11 +16,10 @@
*/
-#include <ft2build.h>
-#include FT_INTERNAL_POSTSCRIPT_AUX_H
-#include FT_INTERNAL_DEBUG_H
-#include FT_INTERNAL_CALC_H
-#include FT_DRIVER_H
+#include <freetype/internal/psaux.h>
+#include <freetype/internal/ftdebug.h>
+#include <freetype/internal/ftcalc.h>
+#include <freetype/ftdriver.h>
#include "psobjs.h"
#include "psconv.h"
@@ -1233,7 +1232,7 @@
bbox->xMax = FT_RoundFix( temp[2] );
bbox->yMax = FT_RoundFix( temp[3] );
- FT_TRACE4(( " [%d %d %d %d]",
+ FT_TRACE4(( " [%ld %ld %ld %ld]",
bbox->xMin / 65536,
bbox->yMin / 65536,
bbox->xMax / 65536,
@@ -1287,7 +1286,7 @@
bbox->xMax = FT_RoundFix( temp[i + 2 * max_objects] );
bbox->yMax = FT_RoundFix( temp[i + 3 * max_objects] );
- FT_TRACE4(( " [%d %d %d %d]",
+ FT_TRACE4(( " [%ld %ld %ld %ld]",
bbox->xMin / 65536,
bbox->yMin / 65536,
bbox->xMax / 65536,
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.h b/Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.h
index d37638d0ca2..fdad672b6d2 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psobjs.h
@@ -20,9 +20,8 @@
#define PSOBJS_H_
-#include <ft2build.h>
-#include FT_INTERNAL_POSTSCRIPT_AUX_H
-#include FT_INTERNAL_CFF_OBJECTS_TYPES_H
+#include <freetype/internal/psaux.h>
+#include <freetype/internal/cffotypes.h>
FT_BEGIN_HEADER
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psread.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psread.c
index 86bfc03c6e5..7f657f2cdc0 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psread.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psread.c
@@ -37,7 +37,7 @@
#include "psft.h"
-#include FT_INTERNAL_DEBUG_H
+#include <freetype/internal/ftdebug.h>
#include "psglue.h"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psstack.c b/Build/source/libs/freetype2/freetype-src/src/psaux/psstack.c
index 6659068001c..7ae5256ef19 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psstack.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psstack.c
@@ -37,7 +37,7 @@
#include "psft.h"
-#include FT_INTERNAL_DEBUG_H
+#include <freetype/internal/ftdebug.h>
#include "psglue.h"
#include "psfont.h"
@@ -59,12 +59,12 @@
CF2_Stack stack = NULL;
- if ( !FT_NEW( stack ) )
- {
- /* initialize the structure; FT_NEW zeroes it */
- stack->memory = memory;
- stack->error = e;
- }
+ if ( FT_NEW( stack ) )
+ return NULL;
+
+ /* initialize the structure; FT_NEW zeroes it */
+ stack->memory = memory;
+ stack->error = e;
/* allocate the stack buffer */
if ( FT_NEW_ARRAY( stack->buffer, stackSize ) )
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/psstack.h b/Build/source/libs/freetype2/freetype-src/src/psaux/psstack.h
index 18cd39bc6a0..b9ef9edf1b2 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/psstack.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/psstack.h
@@ -39,6 +39,7 @@
#ifndef PSSTACK_H_
#define PSSTACK_H_
+#include <freetype/internal/compiler-macros.h>
FT_BEGIN_HEADER
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/pstypes.h b/Build/source/libs/freetype2/freetype-src/src/psaux/pstypes.h
index 041287e8d5e..435ef7e1fec 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/pstypes.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/pstypes.h
@@ -39,8 +39,7 @@
#ifndef PSTYPES_H_
#define PSTYPES_H_
-#include <ft2build.h>
-#include FT_FREETYPE_H
+#include <freetype/freetype.h>
FT_BEGIN_HEADER
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.c b/Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.c
index 451b2765373..e21e93ca268 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.c
@@ -18,7 +18,7 @@
#include "t1cmap.h"
-#include FT_INTERNAL_DEBUG_H
+#include <freetype/internal/ftdebug.h>
#include "psauxerr.h"
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.h b/Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.h
index 5411913831f..031796510f7 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/t1cmap.h
@@ -19,9 +19,8 @@
#ifndef T1CMAP_H_
#define T1CMAP_H_
-#include <ft2build.h>
-#include FT_INTERNAL_OBJECTS_H
-#include FT_INTERNAL_TYPE1_TYPES_H
+#include <freetype/internal/ftobjs.h>
+#include <freetype/internal/t1types.h>
FT_BEGIN_HEADER
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.c b/Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.c
index fa1745d9e01..2ed27ca19ef 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.c
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.c
@@ -16,12 +16,11 @@
*/
-#include <ft2build.h>
-#include FT_INTERNAL_CALC_H
-#include FT_INTERNAL_DEBUG_H
-#include FT_INTERNAL_POSTSCRIPT_HINTS_H
-#include FT_INTERNAL_HASH_H
-#include FT_OUTLINE_H
+#include <freetype/internal/ftcalc.h>
+#include <freetype/internal/ftdebug.h>
+#include <freetype/internal/pshints.h>
+#include <freetype/internal/fthash.h>
+#include <freetype/ftoutln.h>
#include "t1decode.h"
#include "psobjs.h"
@@ -1238,8 +1237,8 @@
FT_UNUSED( orig_y );
- /* the `metrics_only' indicates that we only want to compute */
- /* the glyph's metrics (lsb + advance width), not load the */
+ /* `metrics_only' indicates that we only want to compute the */
+ /* glyph's metrics (lsb + advance width) without loading the */
/* rest of it; so exit immediately */
if ( builder->metrics_only )
{
@@ -1273,8 +1272,8 @@
x = ADD_LONG( builder->pos_x, top[0] );
y = ADD_LONG( builder->pos_y, top[1] );
- /* the `metrics_only' indicates that we only want to compute */
- /* the glyph's metrics (lsb + advance width), not load the */
+ /* `metrics_only' indicates that we only want to compute the */
+ /* glyph's metrics (lsb + advance width) without loading the */
/* rest of it; so exit immediately */
if ( builder->metrics_only )
{
@@ -1728,7 +1727,7 @@
#ifdef FT_DEBUG_LEVEL_TRACE
if ( bol )
{
- FT_TRACE5(( " (%d)", decoder->top - decoder->stack ));
+ FT_TRACE5(( " (%ld)", decoder->top - decoder->stack ));
bol = FALSE;
}
#endif
@@ -1750,8 +1749,6 @@
case 7:
case 8:
case 9:
- case 10:
- case 11:
case 14:
case 15:
case 21:
@@ -1760,6 +1757,13 @@
case 31:
goto No_Width;
+ case 10:
+ op = op_callsubr;
+ break;
+ case 11:
+ op = op_return;
+ break;
+
case 13:
op = op_hsbw;
break;
@@ -1899,13 +1903,20 @@
#ifdef FT_DEBUG_LEVEL_TRACE
- if ( op != op_div )
+ switch ( op )
{
+ case op_callsubr:
+ case op_div:
+ case op_return:
+ break;
+
+ default:
if ( top - decoder->stack != num_args )
FT_TRACE0(( "t1_decoder_parse_metrics:"
" too much operands on the stack"
- " (seen %d, expected %d)\n",
+ " (seen %ld, expected %d)\n",
top - decoder->stack, num_args ));
+ break;
}
#endif /* FT_DEBUG_LEVEL_TRACE */
@@ -1926,8 +1937,8 @@
builder->advance.y = 0;
/* we only want to compute the glyph's metrics */
- /* (lsb + advance width), not load the rest of */
- /* it; so exit immediately */
+ /* (lsb + advance width) without loading the */
+ /* rest of it; so exit immediately */
FT_TRACE4(( "\n" ));
return FT_Err_Ok;
@@ -1945,8 +1956,8 @@
builder->advance.y = top[3];
/* we only want to compute the glyph's metrics */
- /* (lsb + advance width), not load the rest of */
- /* it; so exit immediately */
+ /* (lsb + advance width), without loading the */
+ /* rest of it; so exit immediately */
FT_TRACE4(( "\n" ));
return FT_Err_Ok;
@@ -1962,6 +1973,91 @@
large_int = FALSE;
break;
+ case op_callsubr:
+ {
+ FT_Int idx;
+
+
+ FT_TRACE4(( " callsubr" ));
+
+ idx = Fix2Int( top[0] );
+
+ if ( decoder->subrs_hash )
+ {
+ size_t* val = ft_hash_num_lookup( idx,
+ decoder->subrs_hash );
+
+
+ if ( val )
+ idx = *val;
+ else
+ idx = -1;
+ }
+
+ if ( idx < 0 || idx >= decoder->num_subrs )
+ {
+ FT_ERROR(( "t1_decoder_parse_metrics:"
+ " invalid subrs index\n" ));
+ goto Syntax_Error;
+ }
+
+ if ( zone - decoder->zones >= T1_MAX_SUBRS_CALLS )
+ {
+ FT_ERROR(( "t1_decoder_parse_metrics:"
+ " too many nested subrs\n" ));
+ goto Syntax_Error;
+ }
+
+ zone->cursor = ip; /* save current instruction pointer */
+
+ zone++;
+
+ /* The Type 1 driver stores subroutines without the seed bytes. */
+ /* The CID driver stores subroutines with seed bytes. This */
+ /* case is taken care of when decoder->subrs_len == 0. */
+ zone->base = decoder->subrs[idx];
+
+ if ( decoder->subrs_len )
+ zone->limit = zone->base + decoder->subrs_len[idx];
+ else
+ {
+ /* We are using subroutines from a CID font. We must adjust */
+ /* for the seed bytes. */
+ zone->base += ( decoder->lenIV >= 0 ? decoder->lenIV : 0 );
+ zone->limit = decoder->subrs[idx + 1];
+ }
+
+ zone->cursor = zone->base;
+
+ if ( !zone->base )
+ {
+ FT_ERROR(( "t1_decoder_parse_metrics:"
+ " invoking empty subrs\n" ));
+ goto Syntax_Error;
+ }
+
+ decoder->zone = zone;
+ ip = zone->base;
+ limit = zone->limit;
+ break;
+ }
+
+ case op_return:
+ FT_TRACE4(( " return" ));
+
+ if ( zone <= decoder->zones )
+ {
+ FT_ERROR(( "t1_decoder_parse_metrics:"
+ " unexpected return\n" ));
+ goto Syntax_Error;
+ }
+
+ zone--;
+ ip = zone->cursor;
+ limit = zone->limit;
+ decoder->zone = zone;
+ break;
+
default:
FT_ERROR(( "t1_decoder_parse_metrics:"
" unhandled opcode %d\n", op ));
diff --git a/Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.h b/Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.h
index 231947e852d..b793504ac6a 100644
--- a/Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.h
+++ b/Build/source/libs/freetype2/freetype-src/src/psaux/t1decode.h
@@ -20,9 +20,8 @@
#define T1DECODE_H_
-#include <ft2build.h>
-#include FT_INTERNAL_POSTSCRIPT_AUX_H
-#include FT_INTERNAL_TYPE1_TYPES_H
+#include <freetype/internal/psaux.h>
+#include <freetype/internal/t1types.h>
FT_BEGIN_HEADER