freetype2/include/freetype
Werner Lemberg 52f911a12d Heavy modification of the PS parser to handle comments and strings
correctly.  This doesn't slow down the loading of PS fonts
significantly since charstrings aren't affected.

* include/freetype/config/ftstdlib.h (ft_xdigit): Renamed to...
(ft_isxdigit): This.  Updated all callers.
(ft_isdigit): New alias to `isdigit'.

* include/freetype/internal/psaux.h (PS_Parser_FuncsRec): Renamed
`skip_alpha' to `skip_PS_token'.
Add parameter to `to_bytes' and change some argument types.

* src/psaux/psauxmod.c (ps_parser_funcs): Updated.
* src/psaux/psobjs.c (ft_char_table): New array to map character
codes (ASCII and EBCDIC) of digits to numbers.
(OP): New auxiliary macro holding either `>=' or `<' depending on
the character encoding.
(skip_comment): New function.
(skip_spaces): Use it.
(skip_alpha): Removed.
(skip_literal_string, skip_string): New functions.
(ps_parser_skip_PS_token): New function.  This is a better
replacement of...
(ps_parser_skip_alpha): Removed.
(ps_parser_to_token, ps+parser_to_token_array): Updated.
(T1Radix): Rewritten, using `ft_char_table'.
(t1_toint): Renamed to...
(ps_toint): This.  Update all callers.
Use `ft_char_table'.
(ps_tobytes): Add parameter to handle delimiters and change some
argument types.
Use `ft_char_table'.
(t1_tofixed): Renamed to...
(ps_tofixed): This.  Update all callers.
Use `ft_char_table'.
(t1_tocoordarray): Renamed and updated to...
(ps_tocoordarray): This.  Update all callers.
(t1_tofixedarray): Renamed and updated to...
(ps_tofixedarray): This.  Update all callers.
(t1_tobool): Renamed to...
(ps_tobool): This.  Update all callers.
(ps_parser_load_field): Updated.
(ps_parser_load_field_table): Use `T1_MAX_TABLE_ELEMENTS'
everywhere.
(ps_parser_to_int, ps_parser_to_fixed, ps_parser_to_coord_array,
ps_parser_to_fixed_array): Skip spaces.  Updated.
(ps_parser_to_bytes): Add parameter to handle delimiters and change
some argument types.  Updated.
* src/psaux/psobjs.h: Updated.

* src/cid/cidload.c (cid_parse_dict): Updated.
* src/cid/cidparse.c (cid_parser_new): Check whether the `StartData'
token was really found.
* src/cid/cidparse.h (cid_parser_skip_alpha): Updated and renamed
to...
(cid_parser_skip_PS_token): This.

* src/type1/t1parse.h (T1_ParserRec): Use `FT_Bool' for boolean
fields.
(T1_Skip_Alpha): Replaced with...
(T1_Skip_PS_Token): This new macro.
* src/type1/t1parse.c (hexa_value): Removed.
(T1_Get_Private_Dict): Use `ft_isxdigit' and
`psaux->ps_parser_funcs_to_bytes' for handling ASCII hexadecimal
encoding.
After decrypting, replace the four random bytes at the beginning
with whitespace.
* src/type1/t1load.c (t1_allocate_blend): Use proper error values.
(parser_blend_design_positions, parse_blend_design_map,
parse_weight_vector): Updated.
(is_space): Handle `\f' also.
(is_name_char): Removed.
(read_binary_data): Updated.
(parse_encoding): Use `ft_isdigit'.
Updated.
(parse_subrs): Updated.
(TABLE_EXTEND): New macro.
(parse_charstrings): Updated.
Provide a workaround for buggy fonts which have more entries in the
/CharStrings dictionary then expected; the function now adds some
slots and skips entries which still exceed the new limit.
(parse_dict): Updated.
Terminate on the token `closefile'.

* src/type42/t42parse.c (T1_Skip_Alpha): Replaced with...
(T1_Skip_PS_Token): This new macro.  Updated all callers.
(t42_parse_encoding): Use `ft_isdigit'.


* src/base/ftmm.c (ft_face_get_mm_service): Return FT_Err_OK if
success.
2003-10-07 05:49:41 +00:00
..
cache * include/freetype/freetype.h (FREETYPE_PATCH): Set to 5. 2003-07-25 05:57:21 +00:00
config Heavy modification of the PS parser to handle comments and strings 2003-10-07 05:49:41 +00:00
internal Heavy modification of the PS parser to handle comments and strings 2003-10-07 05:49:41 +00:00
freetype.h * README, builds/unix/configure, builds/unix/configure.ac, 2003-09-11 19:58:19 +00:00
ftbbox.h finishing function header formatting 2001-06-28 17:49:10 +00:00
ftbdf.h Make reference valid HTML 4.01 transitional. 2003-07-25 22:09:53 +00:00
ftcache.h * include/freetype/freetype.h (FREETYPE_PATCH): Set to 5. 2003-07-25 05:57:21 +00:00
ftchapters.h updating documentation & changes 2002-11-13 23:28:08 +00:00
fterrdef.h * src/type42/t42drivr.c: s/T42_ENCODING_TYPE_/T1_ENCODING_TYPE_/. 2002-05-21 14:13:01 +00:00
fterrors.h * builds/vms/ftconfig.h: Rename LOCAL_DEF and LOCAL_FUNC to 2002-03-29 07:43:04 +00:00
ftglyph.h * include/freetype/freetype.h (FREETYPE_PATCH): Set to 5. 2003-07-25 05:57:21 +00:00
ftgzip.h * include/freetype/freetype.h (FREETYPE_PATCH): Set to 5. 2003-07-25 05:57:21 +00:00
ftimage.h * include/freetype/freetype.h (FREETYPE_PATCH): Set to 5. 2003-07-25 05:57:21 +00:00
ftincrem.h * include/freetype/freetype.h (FREETYPE_PATCH): Set to 5. 2003-07-25 05:57:21 +00:00
ftlist.h finishing function header formatting 2001-06-28 17:49:10 +00:00
ftmac.h Formatting. 2001-12-07 21:56:32 +00:00
ftmm.h * include/freetype/ftmm.h, include/freetype/ftmodule.h, 2003-09-11 19:51:54 +00:00
ftmodapi.h * include/freetype/ftmodule.h: Renamed to... 2003-10-05 09:55:58 +00:00
ftmoderr.h * src/tools/glnames.py: Updated to AGL 2.0. 2003-06-23 19:26:53 +00:00
ftoutln.h Heavy modification of the PS parser to handle comments and strings 2003-10-07 05:49:41 +00:00
ftpfr.h Cleanups. 2003-04-22 07:49:24 +00:00
ftrender.h * src/sfnt/ttpost.c (load_post_names, tt_face_free_ps_names, 2002-09-27 11:09:23 +00:00
ftsizes.h documentation updates for 2.1.2 2002-06-23 10:57:31 +00:00
ftsnames.h * src/truetype/ttgload.c: 16bit fixes. 2002-04-01 14:25:28 +00:00
ftstroke.h * include/freetype/ftstroker.h: Renamed to... 2003-06-07 04:02:21 +00:00
ftsynth.h * include/freetype/ftsynth.h, src/base/ftsynth.c: rewriting the automatic 2002-07-01 21:33:48 +00:00
ftsysio.h Formatting, minor doc fixes. 2002-09-18 11:32:12 +00:00
ftsysmem.h Formatting, minor doc fixes. 2002-09-18 11:32:12 +00:00
ftsystem.h * include/freetype/ftgzip.h, src/gzip/ftgzip.c: 2002-10-31 22:19:27 +00:00
fttrigon.h * include/freetype/fttrigon.h (FT_Vector_Normalize): Removed. 2003-06-01 21:30:04 +00:00
fttypes.h Adding some comments. 2002-08-18 07:15:52 +00:00
ftwinfnt.h Cleanups. 2003-04-22 07:49:24 +00:00
ftxf86.h * src/bdf/descrip.mms, src/type42/descrip.mms: New files. 2002-05-30 19:22:14 +00:00
t1tables.h * Jamfile: adding the "refdoc" target to the Jamfile in order to 2003-08-17 22:31:23 +00:00
ttnameid.h * src/bdf/bdflib.c (_bdf_readstream): Don't use FT_MEM_COPY but 2003-09-01 07:06:06 +00:00
tttables.h * include/freetype/ftmm.h, include/freetype/ftmodule.h, 2003-09-11 19:51:54 +00:00
tttags.h finishing function header formatting 2001-06-28 17:49:10 +00:00
ttunpat.h * Jamfile: adding the "refdoc" target to the Jamfile in order to 2003-08-17 22:31:23 +00:00