shithub: freetype+ttf2subf

Download patch

ref: 1a0a97938a5d816ef492f8b6de14f2c7add54ef1
parent: c48bf37bda6445eaac9e869cf5adef76c74fc079
author: Werner Lemberg <[email protected]>
date: Thu Jan 3 17:06:13 EST 2002

* src/type1/t1objs.c (T1_Face_Init): Add cast to avoid compiler
warning.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,27 +1,32 @@
-2002-01-03  Keith Packard  <[email protected]>
+2002-01-03  Werner Lemberg  <[email protected]>
 
-        * builds/unix/ftsystem.c (FT_New_Stream): added a fix to ensure that
-        all FreeType input streams are closed in child processes of a "fork"
-        on Unix systems. This is important to avoid (potential) access
-        control issues..
+	* src/type1/t1objs.c (T1_Face_Init): Add cast to avoid compiler
+	warning.
 
+2002-01-03  Keith Packard  <[email protected]>
 
+	* builds/unix/ftsystem.c (FT_New_Stream): Added a fix to ensure that
+	all FreeType input streams are closed in child processes of a "fork"
+	on Unix systems.  This is important to avoid (potential) access
+	control issues.
+
 2002-01-03  David Turner  <[email protected]>
 
-        * src/type1/t1objs.c (T1_Face_Init): fixed a bug that crashed the
-        library when dealing with certain weird fonts (like "Stalingrad",
-        in "sadn.pfb". This font has no full font name entry.. )
+	* src/type1/t1objs.c (T1_Face_Init): Fixed a bug that crashed the
+	library when dealing with certain weird fonts like "Stalingrad", in
+	"sadn.pfb" (this font has no full font name entry).
 
-        * src/base/ftoutln.c, include/freetype/ftoutln.h: added the
-        FT_Outline_Check API to check the consistency of outline data
-        
-        * src/base/ftobjs.c (FT_Load_Glyph): added a call to the new
-        FT_Outline_Check to ensure that loaded glyphs are valid. This
-        allows certain fonts like "tt1095m_.ttf" to be loaded even though
-        it appears they contain really funky glyphs..
-        
-        there still is a bug there though.. !!
+	* src/base/ftoutln.c, include/freetype/ftoutln.h (FT_Outline_Check):
+	New function to check the consistency of outline data.
 
+	* src/base/ftobjs.c (FT_Load_Glyph): Use `FT_Outline_Check' to
+	ensure that loaded glyphs are valid.  This allows certain fonts like
+	"tt1095m_.ttf" to be loaded even though it appears they contain
+	really funky glyphs.
+
+	There still is a bug there, though.
+
+	* src/truetype/ttgload.c (load_truetype_glyph): Fix error condition.
 
 2001-12-30  David Turner  <[email protected]>
 
--- a/builds/unix/ftsystem.c
+++ b/builds/unix/ftsystem.c
@@ -223,17 +223,17 @@
       return FT_Err_Cannot_Open_Resource;
     }
 
-    /* here, we ensure that a "fork" will _not_ duplicate  */
-    /* our opened input streams on Unix. This is critical  */
-    /* since it would avoid some (possible) access control */
-    /* issues and clean up the kernel file table a bit.    */
+    /* Here we ensure that a "fork" will _not_ duplicate   */
+    /* our opened input streams on Unix.  This is critical */
+    /* since it avoids some (possible) access control      */
+    /* issues and cleans up the kernel file table a bit.   */
     /*                                                     */
 #ifdef F_SETFD
-#  ifdef FD_CLOEXEC
-    ret = fcntl ( file, F_SETFD, FD_CLOEXEC);
-#  else
-    ret = fcntl ( file, F_SETFD, 1);
-#  endif /* FD_CLOEXEC */
+#ifdef FD_CLOEXEC
+    ret = fcntl( file, F_SETFD, FD_CLOEXEC );
+#else
+    ret = fcntl( file, F_SETFD, 1 );
+#endif /* FD_CLOEXEC */
 #endif /* F_SETFD */
 
     if ( fstat( file, &stat_buf ) < 0 )
--- a/include/freetype/ftoutln.h
+++ b/include/freetype/ftoutln.h
@@ -53,6 +53,7 @@
   /*    FT_Outline_Translate                                               */
   /*    FT_Outline_Transform                                               */
   /*    FT_Outline_Reverse                                                 */
+  /*    FT_Outline_Check                                                   */
   /*                                                                       */
   /*    FT_Outline_Get_CBox                                                */
   /*    FT_Outline_Get_BBox                                                */
@@ -184,10 +185,10 @@
   /*    FT_Outline_Check                                                   */
   /*                                                                       */
   /* <Description>                                                         */
-  /*    Check the content of an outline descriptor                         */
+  /*    Check the contents of an outline descriptor.                       */
   /*                                                                       */
   /* <Input>                                                               */
-  /*    outline :: handle to source outline                                */
+  /*    outline :: A handle to a source outline.                           */
   /*                                                                       */
   /* <Return>                                                              */
   /*    FreeType error code.  0 means success.                             */
--- a/src/base/ftobjs.c
+++ b/src/base/ftobjs.c
@@ -914,7 +914,7 @@
       if ( error )
         goto Exit;
 
-      /* check that the loaded outline is correct !! */      
+      /* check that the loaded outline is correct */
       error = FT_Outline_Check( &slot->outline );
       if ( error )
         goto Exit;
@@ -1944,8 +1944,8 @@
   FT_Get_Postscript_Name( FT_Face  face )
   {
     const char*  result = NULL;
-    
 
+
     if ( !face )
       goto Exit;
 
@@ -2002,19 +2002,19 @@
   FT_Activate_Size( FT_Size  size )
   {
     FT_Face  face;
-    
 
+
     if ( size == NULL )
       return FT_Err_Bad_Argument;
-      
+
     face = size->face;
     if ( face == NULL || face->driver == NULL )
       return FT_Err_Bad_Argument;
-    
+
     /* we don't need anything more complex than that; all size objects */
     /* are already listed by the face                                  */
     face->size = size;
-    
+
     return FT_Err_Ok;
   }
 
--- a/src/base/ftoutln.c
+++ b/src/base/ftoutln.c
@@ -299,7 +299,7 @@
 
 
   /* documentation is in ftoutln.h */
-  
+
   FT_EXPORT_DEF( FT_Error )
   FT_Outline_Check( FT_Outline*  outline )
   {
@@ -310,18 +310,19 @@
       FT_Int  end0, end;
       FT_Int  n;
 
-      /* empty glyph ?? */
+
+      /* empty glyph? */
       if ( n_points == 0 && n_contours == 0 )
         return 0;
-      
+
       /* check point and contour counts */
       if ( n_points <= 0 || n_contours <= 0 )
         goto Bad;
-      
+
       end0 = -1;
       for ( n = 0; n < n_contours; n++ )
       {
-        end  = outline->contours[n];
+        end = outline->contours[n];
 
         /* note that we don't accept empty contours */
         if ( end <= end0 || end >= n_points )
@@ -329,13 +330,14 @@
 
         end0 = end;
       }
-      
-      if ( end != n_points-1 )
+
+      if ( end != n_points - 1 )
         goto Bad;
 
       /* XXX: check the that array */
       return 0;
     }
+
   Bad:
     return FT_Err_Invalid_Argument;
   }
--- a/src/type1/t1objs.c
+++ b/src/type1/t1objs.c
@@ -377,7 +377,7 @@
                                             : (char *)"Regular" );
         }
         else
-          root->style_name = "Regular";
+          root->style_name = (char *)"Regular";
       }
       else
       {