File CVE-2012-1132.patch of Package freetype2

---
 src/psaux/psobjs.c |    2 +-
 src/type1/t1load.c |    6 ++++--
 2 files changed, 5 insertions(+), 3 deletions(-)

Index: freetype-2.4.4/src/type1/t1load.c
===================================================================
--- freetype-2.4.4.orig/src/type1/t1load.c
+++ freetype-2.4.4/src/type1/t1load.c
@@ -1386,7 +1386,8 @@
 
 
       /* If the next token isn't `dup' we are done. */
-      if ( ft_strncmp( (char*)parser->root.cursor, "dup", 3 ) != 0 )
+      if ( parser->root.cursor + 4 < parser->root.limit            &&
+           ft_strncmp( (char*)parser->root.cursor, "dup", 3 ) != 0 )
         break;
 
       T1_Skip_PS_Token( parser );       /* `dup' */
@@ -1405,7 +1406,8 @@
         return;
       T1_Skip_Spaces  ( parser );
 
-      if ( ft_strncmp( (char*)parser->root.cursor, "put", 3 ) == 0 )
+      if ( parser->root.cursor + 4 < parser->root.limit            &&
+           ft_strncmp( (char*)parser->root.cursor, "put", 3 ) == 0 )
       {
         T1_Skip_PS_Token( parser ); /* skip `put' */
         T1_Skip_Spaces  ( parser );
Index: freetype-2.4.4/src/psaux/psobjs.c
===================================================================
--- freetype-2.4.4.orig/src/psaux/psobjs.c
+++ freetype-2.4.4/src/psaux/psobjs.c
@@ -590,7 +590,7 @@
     }
 
   Exit:
-    if ( cur == parser->cursor )
+    if ( cur < limit && cur == parser->cursor )
     {
       FT_ERROR(( "ps_parser_skip_PS_token:"
                  " current token is `%c' which is self-delimiting\n"
openSUSE Build Service is sponsored by