ref: ebda8b32573726cd6da483b4018913dc2d3f2bb4
parent: 302fd625905c7f281e8fe9d49212234aa78af62e
author: Werner Lemberg <[email protected]>
date: Mon Sep 17 16:59:31 EDT 2012
Fix Savannah bug #37350. * src/type1/t1parse.c (T1_Get_Private_Dict) <found>: Check for ASCII storage only if we actually have at least four bytes.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2012-09-17 Werner Lemberg <[email protected]>
+
+ Fix Savannah bug #37350.
+
+ * src/type1/t1parse.c (T1_Get_Private_Dict) <found>: Check for ASCII
+ storage only if we actually have at least four bytes.
+
2012-09-15 Werner Lemberg <[email protected]>
[autofit] Implement `fallback-script' property.
--- a/src/type1/t1parse.c
+++ b/src/type1/t1parse.c
@@ -441,7 +441,8 @@
/* the `eexec' keyword); if they all are hexadecimal digits, then */
/* we have a case of ASCII storage */
- if ( ft_isxdigit( cur[0] ) && ft_isxdigit( cur[1] ) &&
+ if ( cur + 3 < limit &&
+ ft_isxdigit( cur[0] ) && ft_isxdigit( cur[1] ) &&
ft_isxdigit( cur[2] ) && ft_isxdigit( cur[3] ) )
{
/* ASCII hexadecimal encoding */