* src/truetype/ttgload.c [TT_MAX_COMPOSITE_RECURSE]: Removed. (load_truetype_glyph): Limit recursion depth by `maxComponentDepth'.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
diff --git a/ChangeLog b/ChangeLog
index ad4cc62..f1321a6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2005-08-28 George Williams <gww@silcom.com>
+
+ * src/truetype/ttgload.c [TT_MAX_COMPOSITE_RECURSE]: Removed.
+ (load_truetype_glyph): Limit recursion depth by `maxComponentDepth'.
+
2005-08-25 J. Ali Harlow <ali@avrc.city.ac.uk>
* builds/unix/freetype2.in (CFlags): Add missing directory.
diff --git a/src/truetype/ttgload.c b/src/truetype/ttgload.c
index 68a9c74..9d44790 100644
--- a/src/truetype/ttgload.c
+++ b/src/truetype/ttgload.c
@@ -63,15 +63,6 @@
#define UNSCALED_COMPONENT_OFFSET 0x1000
-/* Maximum recursion depth we allow for composite glyphs.
- * The TrueType spec doesn't say anything about recursion,
- * so it isn't clear that recursion is allowed at all. But
- * we'll be generous.
- */
-#define TT_MAX_COMPOSITE_RECURSE 5
-
-
-
/*************************************************************************/
/* */
/* <Function> */
@@ -1221,7 +1212,7 @@
#endif
- if ( recurse_count >= TT_MAX_COMPOSITE_RECURSE )
+ if ( recurse_count >= face->max_profile.maxComponentDepth )
{
error = TT_Err_Invalid_Composite;
goto Exit;