[truetype] Record the end of IDEFs. To match the logic in FDEF. The value of the end is only used for bound-checking in `Ins_JMPR', so it may not have been obvious that it was not recorded. Tested (as part of Font Validator 2.0) all the fonts on Fedora and did not see any change. * src/truetype/ttinterp.c (Ins_IDEF): Updated.
diff --git a/ChangeLog b/ChangeLog
index 616fdec..0b206fd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2016-07-22 Hin-Tak Leung <htl10@users.sourceforge.net>
+
+ [truetype] Record the end of IDEFs.
+
+ To match the logic in FDEF. The value of the end is only used for
+ bound-checking in `Ins_JMPR', so it may not have been obvious that
+ it was not recorded. Tested (as part of Font Validator 2.0) all the
+ fonts on Fedora and did not see any change.
+
+ * src/truetype/ttinterp.c (Ins_IDEF): Updated.
+
2016-07-19 Werner Lemberg <wl@gnu.org>
[truetype] Sanitizer fix, second try.
diff --git a/src/truetype/ttinterp.c b/src/truetype/ttinterp.c
index eb6025f..8027b0d 100644
--- a/src/truetype/ttinterp.c
+++ b/src/truetype/ttinterp.c
@@ -4008,6 +4008,7 @@
exc->error = FT_THROW( Nested_DEFS );
return;
case 0x2D: /* ENDF */
+ def->end = exc->IP;
return;
}
}