Werner Lemberg 441b3f3898 [truetype] Improve handling of buggy `prep' tables.
In case of an error in the `prep' table, no longer try to execute it
again and again.  This makes FreeType handle endless loops in buggy
fonts much faster.

* src/truetype/ttobjs.h (TT_SizeRec): The fields `bytecode_ready'
and `cvt_ready' are now negative if not initialized yet, otherwise
they indicate the error code of the last run.

* src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep,
tt_size_done_bytecode, tt_size_init_bytecode,
tt_size_ready_bytecode, tt_size_init, tt_size_done, tt_size_reset):
Updated.

* src/truetype/ttgload.c (tt_loader_init): Updated.
* src/truetype/ttinterp.c (TT_RunIns): Force reexecution of `fpgm'
and `prep' only if we are in the `glyf' table.
2014-07-13 02:28:14 +09:00
..
2014-07-11 22:40:34 -04:00
2014-03-18 08:39:35 +01:00
2013-03-14 11:21:17 +01:00
2014-03-18 08:39:35 +01:00
2014-02-28 09:25:57 +01:00
2013-06-04 10:30:48 +02:00
2014-03-18 08:39:35 +01:00
2014-03-18 08:39:35 +01:00
2014-01-23 08:14:53 +01:00
2013-12-21 08:14:25 +01:00
2014-04-24 07:13:31 +02:00
2014-06-27 06:55:56 +02:00
2014-04-15 16:47:05 +02:00
2014-03-18 08:39:35 +01:00
2014-01-23 08:14:53 +01:00
2013-11-13 08:55:46 +01:00