* src/type1/t1afm.c (T1_Read_PFM): Zero offset means `no kerning table available'. From Sergey Tolstov <stolstov@esri.com>.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
diff --git a/ChangeLog b/ChangeLog
index 4c773fb..9873095 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2005-11-07 Werner Lemberg <wl@gnu.org>
+
+ * src/type1/t1afm.c (T1_Read_PFM): Zero offset means `no kerning
+ table available'. From Sergey Tolstov <stolstov@esri.com>.
+
2005-11-03 Ville Syrjälä <syrjala@sci.fi>
* src/base/ftobjs.c (FT_Open_Face): Avoid possible memory leak.
diff --git a/src/type1/t1afm.c b/src/type1/t1afm.c
index bef8251..83a8aa3 100644
--- a/src/type1/t1afm.c
+++ b/src/type1/t1afm.c
@@ -4,7 +4,7 @@
/* */
/* AFM support for Type 1 fonts (body). */
/* */
-/* Copyright 1996-2001, 2002, 2003, 2004 by */
+/* Copyright 1996-2001, 2002, 2003, 2004, 2005 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@@ -285,6 +285,11 @@
/* Kerning offset is 14 bytes from start of extensions table. */
p += 14;
p = start + LITTLE_ENDIAN_UINT( p );
+
+ if ( p == start )
+ /* zero offset means no table */
+ goto Exit;
+
if ( p + 2 > limit )
{
error = T1_Err_Unknown_File_Format;