shithub: freetype+ttf2subf

Download patch

ref: 95f206b1eab43f4e32119270151c44e46deae5d9
parent: 26377008e7fe6fac6bc5fd6a1ebd929a8b542bbf
author: Werner Lemberg <[email protected]>
date: Tue Mar 21 15:47:28 EST 2006

* src/sfnt/ttcmap.c (tt_face_build_cmaps): Handle invalid offset
correctly.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -9,6 +9,9 @@
 	Check range of `glyph_index'.
 	* src/cff/cffgload.h: Updated.
 
+	* src/sfnt/ttcmap.c (tt_face_build_cmaps): Handle invalid offset
+	correctly.
+
 2006-03-21  David Turner  <[email protected]>
 
 	* src/autofit/aflatin.c (af_latin_metrics_scale): Fix small bug
--- a/src/sfnt/ttcmap.c
+++ b/src/sfnt/ttcmap.c
@@ -2271,7 +2271,7 @@
       charmap.encoding    = FT_ENCODING_NONE;  /* will be filled later */
       offset              = TT_NEXT_ULONG( p );
 
-      if ( offset && table + offset + 2 <= limit )
+      if ( offset && offset <= face->cmap_size - 2 )
       {
         FT_Byte*                       cmap   = table + offset;
         volatile FT_UInt               format = TT_PEEK_USHORT( cmap );