Commit aef3fc816b4900a2cb9119e1dcbed339ef5c1590

Werner Lemberg 2001-12-17T16:21:22

* src/truetype/ttgload.c (load_truetype_glyph): Fix test for invalid glyph header.

diff --git a/ChangeLog b/ChangeLog
index 6d220dd..52c5a9d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2001-12-17  Werner Lemberg  <wl@gnu.org>
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fix test for invalid
+	glyph header.
+
 2001-12-15  Werner Lemberg  <wl@gnu.org>
 
 	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Remove compiler warning.
diff --git a/src/base/ftobjs.c b/src/base/ftobjs.c
index ff5895e..1a10f2a 100644
--- a/src/base/ftobjs.c
+++ b/src/base/ftobjs.c
@@ -1873,6 +1873,7 @@
     return result;
   }
 
+
   /* documentation is in freetype.h */
 
   FT_EXPORT_DEF( FT_Error )
diff --git a/src/truetype/ttgload.c b/src/truetype/ttgload.c
index 7f1481f..8b586e2 100644
--- a/src/truetype/ttgload.c
+++ b/src/truetype/ttgload.c
@@ -723,16 +723,6 @@
     if ( index < (FT_UInt)face->num_locations - 1 )
        count = face->glyph_locations[index + 1] - offset;
 
-    /* temporary hack */
-#if 1
-    if ( count < 10 )
-    {
-      /* This glyph is corrupted -- it does not have a complete header */
-      error = TT_Err_Invalid_Outline;
-      goto Fail;
-    }
-#endif
-
     if ( count == 0 )
     {
       /* as described by Frederic Loyer, these are spaces, and */
@@ -759,6 +749,16 @@
       goto Exit;
     }
 
+    /* temporary hack */
+#if 1
+    if ( count < 10 )
+    {
+      /* This glyph is corrupted -- it does not have a complete header */
+      error = TT_Err_Invalid_Outline;
+      goto Fail;
+    }
+#endif
+
     offset = loader->glyf_offset + offset;
 
     /* access glyph frame */