|
@@ -108,3 +108,24 @@ Index: include/freetype/freetype.h
|
|
|
#ifndef __FREETYPE_H__
|
|
#ifndef __FREETYPE_H__
|
|
|
#define __FREETYPE_H__
|
|
#define __FREETYPE_H__
|
|
|
|
|
|
|
|
|
|
+------------------------------------------------------------------------------
|
|
|
|
|
+
|
|
|
|
|
+Check for the "eexec" keyword in Type1 fonts.
|
|
|
|
|
+This fixes a potential hang when viewing certain PDF documents.
|
|
|
|
|
+See http://bugzilla.gnome.org/show_bug.cgi?id=129400 for details.
|
|
|
|
|
+
|
|
|
|
|
+Index: src/type1/t1load.c
|
|
|
|
|
+--- src/type1/t1load.c 2003/12/12 15:38:39 1.88
|
|
|
|
|
++++ src/type1/t1load.c 2003/12/22 11:35:36 1.89
|
|
|
|
|
+@@ -1527,6 +1527,11 @@
|
|
|
|
|
+ parser->root.cursor = cur2;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
++ /* look for `eexec' */
|
|
|
|
|
++ else if ( *cur == 'e' && cur + 5 < limit &&
|
|
|
|
|
++ ft_strncmp( (char*)cur, "eexec", 5 ) == 0 )
|
|
|
|
|
++ break;
|
|
|
|
|
++
|
|
|
|
|
+ /* look for `closefile' which ends the eexec section */
|
|
|
|
|
+ else if ( *cur == 'c' && cur + 9 < limit &&
|
|
|
|
|
+ ft_strncmp( (char*)cur, "closefile", 9 ) == 0 )
|