shithub: freetype+ttf2subf

Download patch

ref: deb4e9839608a996ff7bb54fcddba93ff1ec0544
parent: 63e3c3b529558d159b05ce3019a55897a575e8a3
author: Werner Lemberg <[email protected]>
date: Wed Jun 28 23:14:25 EDT 2000

Formatting...

Preprocessor lines now always start the line.

Improved error handling in `base' module.

Fixed a out-of-bounds error in ttgload.

git/fs: mount .git/fs: mount/attach disallowed
--- a/include/freetype/internal/ftobjs.h
+++ b/include/freetype/internal/ftobjs.h
@@ -106,25 +106,25 @@
   } FT_ModuleRec;
 
   /* typecast an object to a FT_Module */
-  #define  FT_MODULE(x)          ((FT_Module)(x))
-  #define  FT_MODULE_CLASS(x)    FT_MODULE(x)->clazz
-  #define  FT_MODULE_LIBRARY(x)  FT_MODULE(x)->library
-  #define  FT_MODULE_MEMORY(x)   FT_MODULE(x)->memory
+#define  FT_MODULE(x)          ((FT_Module)(x))
+#define  FT_MODULE_CLASS(x)    FT_MODULE(x)->clazz
+#define  FT_MODULE_LIBRARY(x)  FT_MODULE(x)->library
+#define  FT_MODULE_MEMORY(x)   FT_MODULE(x)->memory
 
-  #define  FT_MODULE_IS_DRIVER(x)  (FT_MODULE_CLASS(x)->module_flags & \
-                                        ft_module_font_driver )
+#define  FT_MODULE_IS_DRIVER(x)  (FT_MODULE_CLASS(x)->module_flags & \
+                                   ft_module_font_driver )
 
-  #define  FT_MODULE_IS_DRIVER(x)  (FT_MODULE_CLASS(x)->module_flags & \
-                                        ft_module_font_driver )
+#define  FT_MODULE_IS_DRIVER(x)  (FT_MODULE_CLASS(x)->module_flags & \
+                                   ft_module_font_driver )
 
-  #define  FT_MODULE_IS_RENDERER(x)  (FT_MODULE_CLASS(x)->module_flags & \
-                                        ft_module_renderer )
+#define  FT_MODULE_IS_RENDERER(x)  (FT_MODULE_CLASS(x)->module_flags & \
+                                     ft_module_renderer )
 
-  #define  FT_DRIVER_IS_SCALABLE(x)  (FT_MODULE_CLASS(x)->module_flags & \
-                                        ft_module_driver_scalable )
+#define  FT_DRIVER_IS_SCALABLE(x)  (FT_MODULE_CLASS(x)->module_flags & \
+                                     ft_module_driver_scalable )
 
-  #define  FT_DRIVER_USES_OUTLINES(x)  !(FT_MODULE_CLASS(x)->module_flags & \
-                                         ft_module_driver_no_outlines )
+#define  FT_DRIVER_USES_OUTLINES(x)  !(FT_MODULE_CLASS(x)->module_flags & \
+                                       ft_module_driver_no_outlines )
 
 
   /*************************************************************************/
@@ -141,19 +141,19 @@
 
   /* a few macros used to perform easy typecasts with minimal brain damage */
 
-  #define  FT_FACE(x)  ((FT_Face)x)
-  #define  FT_SIZE(x)  ((FT_Size)x)
-  #define  FT_SLOT(x)  ((FT_GlyphSlot)x)
+#define  FT_FACE(x)  ((FT_Face)x)
+#define  FT_SIZE(x)  ((FT_Size)x)
+#define  FT_SLOT(x)  ((FT_GlyphSlot)x)
   
-  #define  FT_FACE_DRIVER(x)   FT_FACE(x)->driver
-  #define  FT_FACE_LIBRARY(x)  FT_FACE_DRIVER(x)->root.library
-  #define  FT_FACE_MEMORY(x)   FT_FACE(x)->memory
+#define  FT_FACE_DRIVER(x)   FT_FACE(x)->driver
+#define  FT_FACE_LIBRARY(x)  FT_FACE_DRIVER(x)->root.library
+#define  FT_FACE_MEMORY(x)   FT_FACE(x)->memory
 
-  #define  FT_SIZE_FACE(x)  FT_SIZE(x)->face
-  #define  FT_SLOT_FACE(x)  FT_SLOT(x)->face
+#define  FT_SIZE_FACE(x)  FT_SIZE(x)->face
+#define  FT_SLOT_FACE(x)  FT_SLOT(x)->face
 
-  #define  FT_FACE_SLOT(x)  FT_FACE(x)->glyph
-  #define  FT_FACE_SIZE(x)  FT_FACE(x)->size
+#define  FT_FACE_SLOT(x)  FT_FACE(x)->glyph
+#define  FT_FACE_SIZE(x)  FT_FACE(x)->size
 
 
   /* this must be kept exported - this will be used later in our own */
@@ -248,7 +248,7 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  #define FT_RENDERER(x)  ((FT_Renderer)(x))
+#define FT_RENDERER(x)  ((FT_Renderer)(x))
 
   typedef struct FT_RendererRec_
   {
@@ -275,10 +275,10 @@
   /*************************************************************************/
 
   /* typecast a module into a driver easily */
-  #define FT_DRIVER(x)  ((FT_Driver)(x))
+#define FT_DRIVER(x)  ((FT_Driver)(x))
 
   /* typecast a module as a driver, and get its driver class */
-  #define FT_DRIVER_CLASS(x)  FT_DRIVER(x)->clazz
+#define FT_DRIVER_CLASS(x)  FT_DRIVER(x)->clazz
 
   /*************************************************************************/
   /*                                                                       */
--- a/include/freetype/internal/t2types.h
+++ b/include/freetype/internal/t2types.h
@@ -175,8 +175,8 @@
   } CFF_SubFont;
 
 
- /* maximum number of sub-fonts in a CID-keyed file */
-  #define CFF_MAX_CID_FONTS  16
+  /* maximum number of sub-fonts in a CID-keyed file */
+#define CFF_MAX_CID_FONTS  16
   
   typedef struct CFF_Font_
   {
--- a/include/freetype/t1tables.h
+++ b/include/freetype/t1tables.h
@@ -140,13 +140,13 @@
   } T1_Blend_Flags;
 
   /* maximum number of multiple-masters designs, per-se the spec */
-  #define T1_MAX_MM_DESIGNS      16
+#define T1_MAX_MM_DESIGNS      16
   
   /* maximum number of multiple-masters axis, per-se the spec */
-  #define T1_MAX_MM_AXIS         4
+#define T1_MAX_MM_AXIS         4
 
   /* maximum number of elements in a design map */
-  #define T1_MAX_MM_MAP_POINTS   20
+#define T1_MAX_MM_MAP_POINTS   20
 
   /* this structure is used to store the BlendDesignMap entry for an axis */
   typedef struct T1_DesignMap_
--- a/src/base/ftcalc.c
+++ b/src/base/ftcalc.c
@@ -50,19 +50,19 @@
 
   static const FT_Long  ft_square_roots[63] =
   {
-       1,    1,    2,     3,     4,     5,     8,    11,
-      16,   22,   32,    45,    64,    90,   128,   181,
-     256,  362,  512,   724,  1024,  1448,  2048,  2896,
-    4096, 5892, 8192, 11585, 16384, 23170, 32768, 46340,
+       1L,    1L,    2L,     3L,     4L,     5L,     8L,    11L,
+      16L,   22L,   32L,    45L,    64L,    90L,   128L,   181L,
+     256L,  362L,  512L,   724L,  1024L,  1448L,  2048L,  2896L,
+    4096L, 5892L, 8192L, 11585L, 16384L, 23170L, 32768L, 46340L,
 
-      65536,   92681,  131072,   185363,   262144,   370727,
-     524288,  741455, 1048576,  1482910,  2097152,  2965820,
-    4194304, 5931641, 8388608, 11863283, 16777216, 23726566,
+      65536L,   92681L,  131072L,   185363L,   262144L,   370727L,
+     524288L,  741455L, 1048576L,  1482910L,  2097152L,  2965820L,
+    4194304L, 5931641L, 8388608L, 11863283L, 16777216L, 23726566L,
 
-      33554432,   47453132,   67108864,   94906265,
-     134217728,  189812531,  268435456,  379625062,
-     536870912,  759250125, 1073741824, 1518500250,
-    2147483647
+      33554432L,   47453132L,   67108864L,   94906265L,
+     134217728L,  189812531L,  268435456L,  379625062L,
+     536870912L,  759250125L, 1073741824L, 1518500250L,
+    2147483647L
   };
 
 #else
@@ -102,9 +102,9 @@
 
       root >>= 1;
       mask >>= 2;
-    }
-    while ( mask != 0 );
 
+    } while ( mask != 0 );
+
     return root;
   }
 
@@ -289,9 +289,9 @@
     {
       s = r;
       r = ( r + l / r ) >> 1;
-    }
-    while ( r > s || r * r > l );
 
+    } while ( r > s || r * r > l );
+
     return r;
   }
 
@@ -487,7 +487,7 @@
     }
     else
     {
-      /* we need more bits, we'll have to do it by hand */
+      /* we need more bits; we have to do it by hand */
       FT_Word32  c;
 
 
@@ -494,7 +494,7 @@
       q  = ( a / b ) << 16;
       c  = a % b;
 
-      /* we must compute C*0x10000/B; we simply shift C and B so */
+      /* we must compute C*0x10000/B: we simply shift C and B so */
       /* C becomes smaller than 16 bits                          */
       while ( c >> 16 )
       {
@@ -601,7 +601,7 @@
     if ( s < 0 )
     {
       z->lo = (FT_Word32)-(FT_Int32)z->lo;
-      z->hi = ~z->hi + !(z->lo);
+      z->hi = ~z->hi + !( z->lo );
     }
   }
 
@@ -636,7 +636,7 @@
     if ( s < 0 )
     {
       x->lo = (FT_Word32)-(FT_Int32)x->lo;
-      x->hi = ~x->hi + !(x->lo);
+      x->hi = ~x->hi + !( x->lo );
     }
     s ^= y;  y = ABS( y );
 
@@ -759,8 +759,8 @@
       r = ( r + FT_Div64by32( l, r ) ) >> 1;
       FT_MulTo64( r, r,   &l2 );
       FT_Sub64  ( l, &l2, &l2 );
-    }
-    while ( r > s || (FT_Int32)l2.hi < 0 );
+
+    } while ( r > s || (FT_Int32)l2.hi < 0 );
 
     return r;
   }
--- a/src/base/ftdebug.c
+++ b/src/base/ftdebug.c
@@ -103,7 +103,7 @@
     if ( component >= trace_max )
       return;
 
-    /* if component is `trace_any', then change _all_ levels at once */
+    /* if component is `trace_any', change _all_ levels at once */
     if ( component == trace_any )
     {
       int  n;
--- a/src/base/ftextend.c
+++ b/src/base/ftextend.c
@@ -152,7 +152,8 @@
       cur->offset  = registry->cur_offset;
 
       registry->num_extensions++;
-      registry->cur_offset += ( cur->size + FT_ALIGNMENT-1 ) & -FT_ALIGNMENT;
+      registry->cur_offset +=
+        ( cur->size + FT_ALIGNMENT - 1 ) & -FT_ALIGNMENT;
 
       FT_TRACE1(( "FT_Register_Extension: `%s' successfully registered\n",
                   cur->id ));
@@ -180,12 +181,12 @@
   /*                           extension interface.                        */
   /*                                                                       */
   /* <Return>                                                              */
-  /*    A pointer to the extension block.                                  */
+  /*    A generic pointer to the extension block.                          */
   /*                                                                       */
   FT_EXPORT_FUNC( void* )  FT_Get_Extension(
                              FT_Face      face,
                              const char*  extension_id,
-                             void*       *extension_interface )
+                             void**       extension_interface )
   {
     FT_Extension_Registry*  registry;
 
@@ -296,7 +297,7 @@
 
     face->extensions = 0;
 
-    /* load extensions registry, exit successfully if none is there */
+    /* load extensions registry; exit successfully if none is there */
 
     registry = (FT_Extension_Registry*)face->driver->extensions;
     if ( !registry )
--- a/src/base/ftglyph.c
+++ b/src/base/ftglyph.c
@@ -42,6 +42,7 @@
 #define FT_COMPONENT  trace_glyph
 
 
+  /* a helper function to avoid duplication of code */
   static
   void  ft_prepare_glyph( FT_Glyph  glyph,
                           FT_Face   face,
@@ -122,13 +123,13 @@
                                 FT_Vector*       origin,
                                 FT_BitmapGlyph*  abitglyph )
   {
-    FT_Error         error;
-    FT_Memory        memory;
+    FT_Error        error;
+    FT_Memory       memory;
 
-    FT_BitmapGlyph   bitglyph;
-    FT_Glyph         glyph;
-    FT_Pos           origin_x = 0;
-    FT_Pos           origin_y = 0;
+    FT_BitmapGlyph  bitglyph;
+    FT_Glyph        glyph;
+    FT_Pos          origin_x = 0;
+    FT_Pos          origin_y = 0;
 
 
     if ( !face )
@@ -171,6 +172,7 @@
 
     /* now, handle bitmap and outline glyph images */
     memory = face->memory;
+
     switch ( face->glyph->format )
     {
     case ft_glyph_format_bitmap:
@@ -230,7 +232,7 @@
         else
           pitch = ( width + 7 ) >> 3;
 
-        size  = pitch * height;
+        size = pitch * height;
         if ( ALLOC( bitglyph, sizeof ( *bitglyph ) ) )
           goto Exit;
 
@@ -318,7 +320,7 @@
     FT_OutlineGlyph  glyph;
 
 
-    /* test for valid face delayed to FT_Load_Glyph() */
+    /* test for valid `face' delayed to FT_Load_Glyph() */
 
     if ( !vecglyph )
       return FT_Err_Invalid_Argument;
@@ -529,7 +531,7 @@
       v = d;
     }
 
-    /* check that we're not trying to normalize zero! */
+    /* check that we are not trying to normalize zero! */
     if ( u == 0 )
       return 0;
 
@@ -630,8 +632,8 @@
 
   /* Compute the orientation of path filling.  It differs between TrueType */
   /* and Type1 formats.  We could use the `ft_outline_reverse_fill' flag,  */
-  /* but it's better to re-compute it directly (it seems that this flag    */
-  /* isn't correctly set for some weird composite glyphs for now).         */
+  /* but it is better to re-compute it directly (it seems that this flag   */
+  /* isn't correctly set for some weird composite glyphs currently).       */
   /*                                                                       */
   /* We do this by computing bounding box points, and computing their      */
   /* curvature.                                                            */
@@ -645,6 +647,7 @@
     FT_BBox  indices;
     int      n, last;
 
+
     indices.xMin = -1;
     indices.yMin = -1;
     indices.xMax = -1;
@@ -756,7 +759,7 @@
 
         d = distance;
 
-        if ( (outline->flags[n] & FT_Curve_Tag_On) == 0 )
+        if ( ( outline->flags[n] & FT_Curve_Tag_On ) == 0 )
           d *= 2;
 
         /* Check discriminant for parallel vectors */
@@ -780,6 +783,7 @@
         {
           /* Vectors are nearly parallel */
           FT_Pos  x, y;
+
 
           x = distance + cur.x + FT_MulFix( d, u.x + v.x ) / 2;
           y = distance + cur.y + FT_MulFix( d, u.y + v.y ) / 2;
--- a/src/base/ftinit.c
+++ b/src/base/ftinit.c
@@ -84,8 +84,9 @@
     FT_Error                 error;
     const FT_Module_Class**  cur;
 
-    /* test for valid library delayed to FT_Add_Module() */
 
+    /* test for valid `library' delayed to FT_Add_Module() */
+
     cur = ft_default_modules;
     while ( *cur )
     {
@@ -114,7 +115,7 @@
   /*    library :: A handle to a new library object.                       */
   /*                                                                       */
   /* <Return>                                                              */
-  /*    FreeTyoe error code.  0 means success.                             */
+  /*    FreeType error code.  0 means success.                             */
   /*                                                                       */
   FT_EXPORT_FUNC( FT_Error )  FT_Init_FreeType( FT_Library*  library )
   {
@@ -128,13 +129,12 @@
     memory = FT_New_Memory();
     if ( !memory )
     {
-      FT_ERROR(( "FT_Init_FreeType:" ));
-      FT_ERROR(( " cannot find memory manager\n" ));
+      FT_ERROR(( "FT_Init_FreeType: cannot find memory manager\n" ));
       return FT_Err_Unimplemented_Feature;
     }
 
-    /* builds a library out of it, then fill it with the set of */
-    /* default drivers.                                         */
+    /* build a library out of it, then fill it with the set of */
+    /* default drivers.                                        */
 
     error = FT_New_Library( memory, library );
     if ( !error )
--- a/src/base/ftobjs.c
+++ b/src/base/ftobjs.c
@@ -201,6 +201,7 @@
     }
   }
 
+
   /*************************************************************************/
   /*************************************************************************/
   /*************************************************************************/
@@ -224,6 +225,7 @@
   /*                                                                       */
   /* <Note>                                                                */
   /*    The function expects a valid `astream' parameter.                  */
+  /*                                                                       */
   static
   FT_Error  ft_new_input_stream( FT_Library     library,
                                  FT_Open_Args*  args,
@@ -315,6 +317,7 @@
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_objs
 
+
   /*************************************************************************/
   /*************************************************************************/
   /*************************************************************************/
@@ -416,7 +419,7 @@
       FT_Memory memory = loader->memory;
 
 
-      FT_GlyphLoader_Reset(loader);
+      FT_GlyphLoader_Reset( loader );
       FREE( loader );
     }
   }
@@ -423,7 +426,8 @@
 
 
   /* re-adjust the `current' outline fields */
-  static void  FT_GlyphLoader_Adjust_Points( FT_GlyphLoader*  loader )
+  static
+  void  FT_GlyphLoader_Adjust_Points( FT_GlyphLoader*  loader )
   {
     FT_Outline*  base    = &loader->base.outline;
     FT_Outline*  current = &loader->current.outline;
@@ -432,7 +436,7 @@
     current->points   = base->points   + base->n_points;
     current->tags     = base->tags     + base->n_points;
     current->contours = base->contours + base->n_contours;
-    
+
     /* handle extra points table - if any */
     if ( loader->use_extra )
       loader->current.extra_points =
@@ -440,13 +444,13 @@
   }
 
 
-
-  BASE_FUNC(FT_Error)  FT_GlyphLoader_Create_Extra( FT_GlyphLoader*  loader )
+  BASE_FUNC( FT_Error )  FT_GlyphLoader_Create_Extra(
+                           FT_GlyphLoader*  loader )
   {
     FT_Error   error;
     FT_Memory  memory = loader->memory;
 
-    
+
     if ( !ALLOC_ARRAY( loader->base.extra_points,
                        loader->max_points, FT_Vector ) )
     {
@@ -458,7 +462,8 @@
 
 
   /* re-adjust the `current' subglyphs field */
-  static void  FT_GlyphLoader_Adjust_Subglyphs( FT_GlyphLoader*  loader )
+  static
+  void  FT_GlyphLoader_Adjust_Subglyphs( FT_GlyphLoader*  loader )
   {
     FT_GlyphLoad* base    = &loader->base;
     FT_GlyphLoad* current = &loader->current;
@@ -471,6 +476,7 @@
   /* Ensure that we can add `n_points' and `n_contours' to our glyph. this */
   /* function reallocates its outline tables if necessary.  Note that it   */
   /* DOESN'T change the number of points within the loader!                */
+  /*                                                                       */
   BASE_FUNC( FT_Error ) FT_GlyphLoader_Check_Points(
                           FT_GlyphLoader*  loader,
                           FT_UInt          n_points,
@@ -482,7 +488,7 @@
     FT_Outline*  current = &loader->current.outline;
     FT_Bool      adjust  = 1;
 
-    FT_UInt  new_max;
+    FT_UInt      new_max;
 
 
     /* check points & tags */
@@ -530,6 +536,7 @@
   /* Ensure that we can add `n_subglyphs' to our glyph. this function */
   /* reallocates its subglyphs table if necessary.  Note that it DOES */
   /* NOT change the number of subglyphs within the loader!            */
+  /*                                                                  */
   BASE_FUNC( FT_Error )  FT_GlyphLoader_Check_Subglyphs(
                            FT_GlyphLoader*  loader,
                            FT_UInt          n_subs )
@@ -599,15 +606,14 @@
   }
 
 
-  BASE_FUNC( FT_Error )   FT_GlyphLoader_Copy_Points(
-                            FT_GlyphLoader*  target,
-                            FT_GlyphLoader*  source )
+  BASE_FUNC( FT_Error )  FT_GlyphLoader_Copy_Points( FT_GlyphLoader*  target,
+                                                     FT_GlyphLoader*  source )
   {
     FT_Error  error;
     FT_UInt   num_points   = source->base.outline.n_points;
     FT_UInt   num_contours = source->base.outline.n_contours;
 
-    
+
     error = FT_GlyphLoader_Check_Points( target, num_points, num_contours );
     if ( !error )
     {
@@ -614,7 +620,7 @@
       FT_Outline*  out = &target->base.outline;
       FT_Outline*  in  = &source->base.outline;
 
-      
+
       MEM_Copy( out->points, in->points,
                 num_points * sizeof ( FT_Vector ) );
       MEM_Copy( out->tags, in->tags,
@@ -621,20 +627,20 @@
                 num_points * sizeof ( char ) );
       MEM_Copy( out->contours, in->contours,
                 num_contours * sizeof ( short ) );
-      
+
       /* do we need to copy the extra points? */
       if ( target->use_extra && source->use_extra )
         MEM_Copy( target->base.extra_points, source->base.extra_points,
                   num_points * sizeof ( FT_Vector ) );
-                  
+
       out->n_points   = num_points;
       out->n_contours = num_contours;
-      
+
       FT_GlyphLoader_Adjust_Points( target );
     }
 
-    return error;                                         
-  }                                           
+    return error;
+  }
 
 
   /*************************************************************************/
@@ -649,7 +655,9 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  static  FT_Error  ft_glyphslot_init( FT_GlyphSlot  slot )
+
+  static
+  FT_Error  ft_glyphslot_init( FT_GlyphSlot  slot )
   {
     FT_Driver         driver = slot->face->driver;
     FT_Driver_Class*  clazz  = driver->clazz;
@@ -667,9 +675,11 @@
   }
 
 
-  static void  ft_glyphslot_clear( FT_GlyphSlot  slot )
+  static
+  void  ft_glyphslot_clear( FT_GlyphSlot  slot )
   {
     /* clear all public fields in the glyph slot */
+
     MEM_Set( &slot->metrics, 0, sizeof ( slot->metrics ) );
     MEM_Set( &slot->outline, 0, sizeof ( slot->outline ) );
     MEM_Set( &slot->bitmap,  0, sizeof ( slot->bitmap )  );
@@ -688,7 +698,8 @@
   }
 
 
-  static void  ft_glyphslot_done( FT_GlyphSlot  slot )
+  static
+  void  ft_glyphslot_done( FT_GlyphSlot  slot )
   {
     FT_Driver         driver = slot->face->driver;
     FT_Driver_Class*  clazz  = driver->clazz;
@@ -741,11 +752,11 @@
     FT_GlyphSlot      slot;
 
 
-    *aslot = 0;
-
     if ( !face || !aslot || !face->driver )
       return FT_Err_Invalid_Argument;
 
+    *aslot = 0;
+
     driver = face->driver;
     clazz  = driver->clazz;
     memory = driver->root.memory;
@@ -814,10 +825,6 @@
   }
 
 
-  /* forward declaration */
-  static FT_Renderer  ft_lookup_glyph_renderer( FT_GlyphSlot  slot );
-
-
   /*************************************************************************/
   /*                                                                       */
   /* <Function>                                                            */
@@ -852,8 +859,8 @@
     if ( !matrix )
     {
       face->transform_matrix.xx = 0x10000L;
-      face->transform_matrix.xy = 0L;
-      face->transform_matrix.yx = 0L;
+      face->transform_matrix.xy = 0;
+      face->transform_matrix.yx = 0;
       face->transform_matrix.yy = 0x10000L;
       matrix = &face->transform_matrix;
     }
@@ -881,8 +888,9 @@
   }
 
 
-  static  FT_Renderer  ft_lookup_glyph_renderer( FT_GlyphSlot  slot );
-  
+  static FT_Renderer  ft_lookup_glyph_renderer( FT_GlyphSlot  slot );
+
+
   /*************************************************************************/
   /*                                                                       */
   /* <Function>                                                            */
@@ -964,17 +972,17 @@
     {
       /* get renderer */
       FT_Renderer  renderer = ft_lookup_glyph_renderer( slot );
-      
 
+
       if ( renderer )
         error = renderer->clazz->transform_glyph( renderer, slot,
                                                   &face->transform_matrix,
                                                   &face->transform_delta );
-      /* transform advance */                                            
-      FT_Vector_Transform( &slot->advance, &face->transform_matrix );                                                  
+      /* transform advance */
+      FT_Vector_Transform( &slot->advance, &face->transform_matrix );
     }
 
-  Exit:                                       
+  Exit:
     return error;
   }
 
@@ -1021,7 +1029,7 @@
                                             FT_ULong  char_code,
                                             FT_Int    load_flags )
   {
-    FT_UInt    glyph_index;
+    FT_UInt  glyph_index;
 
 
     if ( !face )
@@ -1092,7 +1100,8 @@
   }
 
 
-  static  void  Destroy_Driver( FT_Driver  driver )
+  static
+  void  Destroy_Driver( FT_Driver  driver )
   {
     FT_List_Finalize( &driver->faces_list,
                       (FT_List_Destructor)destroy_face,
@@ -1099,7 +1108,7 @@
                       driver->root.memory,
                       driver );
 
-    /* see if we need to drop the driver's glyph loader */
+    /* check whether we need to drop the driver's glyph loader */
     if ( FT_DRIVER_USES_OUTLINES( driver ) )
       FT_GlyphLoader_Done( driver->glyph_loader );
   }
@@ -1130,7 +1139,7 @@
     clazz  = driver->clazz;
     memory = driver->root.memory;
 
-    /* allocate the face object, and perform basic initialization */
+    /* allocate the face object and perform basic initialization */
     if ( ALLOC( face, clazz->face_object_size ) )
       goto Fail;
 
@@ -1257,11 +1266,11 @@
   /*    `*face'.  Its return value should be 0 if the resource is          */
   /*    recognized, or non-zero if not.                                    */
   /*                                                                       */
-  FT_EXPORT_FUNC( FT_Error )  FT_New_Memory_Face( FT_Library   library,
-                                                  void*        file_base,
-                                                  FT_Long      file_size,
-                                                  FT_Long      face_index,
-                                                  FT_Face*     face )
+  FT_EXPORT_FUNC( FT_Error )  FT_New_Memory_Face( FT_Library  library,
+                                                  void*       file_base,
+                                                  FT_Long     file_size,
+                                                  FT_Long     face_index,
+                                                  FT_Face*    face )
   {
     FT_Open_Args  args;
 
@@ -1341,12 +1350,13 @@
 
     /* create input stream */
     error = ft_new_input_stream( library, args, &stream );
-    if ( error ) goto Exit;
+    if ( error )
+      goto Exit;
 
     memory = library->memory;
 
     /* If the font driver is specified in the `args' structure, use */
-    /* it.  Otherwise, we'll scan the list of registered drivers.   */
+    /* it.  Otherwise, we scan the list of registered drivers.      */
     if ( args->flags & ft_open_driver && args->driver )
     {
       driver = FT_DRIVER( args->driver );
@@ -1390,6 +1400,7 @@
           FT_Int         num_params = 0;
           FT_Parameter*  params     = 0;
 
+
           driver = FT_DRIVER( cur[0] );
 
           if ( args->flags & ft_open_params )
@@ -1418,7 +1429,7 @@
   Success:
     FT_TRACE4(( "FT_New_Face: New face object, adding to list\n" ));
 
-    /* set the EXTERNAL_STREAM bit for FT_Done_Face */
+    /* set the FT_FACE_FLAG_EXTERNAL_STREAM bit for FT_Done_Face */
     if ( args->flags & ft_open_stream && args->stream )
       face->face_flags |= FT_FACE_FLAG_EXTERNAL_STREAM;
 
@@ -1437,9 +1448,11 @@
 
 
       FT_TRACE4(( "FT_Open_Face: Creating glyph slot\n" ));
+
       error = FT_New_GlyphSlot( face, &slot );
-      if ( error ) goto Fail;
-      
+      if ( error )
+        goto Fail;
+
       face->glyph = slot;
     }
 
@@ -1449,9 +1462,11 @@
 
 
       FT_TRACE4(( "FT_Open_Face: Creating size object\n" ));
+
       error = FT_New_Size( face, &size );
-      if ( error ) goto Fail;
-      
+      if ( error )
+        goto Fail;
+
       face->size = size;
     }
 
@@ -1472,6 +1487,7 @@
 
   Exit:
     FT_TRACE4(( "FT_Open_Face: Return %d\n", error ));
+
     return error;
   }
 
@@ -1552,8 +1568,8 @@
   /*    when invoking this function.  Most drivers simply do not implement */
   /*    file attachments.                                                  */
   /*                                                                       */
-  FT_EXPORT_FUNC( FT_Error )  FT_Attach_Stream( FT_Face       face,
-                                                FT_Open_Args* parameters )
+  FT_EXPORT_FUNC( FT_Error )  FT_Attach_Stream( FT_Face        face,
+                                                FT_Open_Args*  parameters )
   {
     FT_Stream  stream;
     FT_Error   error;
@@ -1620,7 +1636,7 @@
     {
       driver = face->driver;
       memory = driver->root.memory;
-  
+
       /* find face in driver's list */
       node = FT_List_Find( &driver->faces_list, face );
       if ( node )
@@ -1628,7 +1644,7 @@
         /* remove face object from the driver's list */
         FT_List_Remove( &driver->faces_list, node );
         FREE( node );
-  
+
         /* now destroy the object proper */
         destroy_face( memory, face, driver );
         error = FT_Err_Ok;
@@ -1667,11 +1683,11 @@
     FT_ListNode       node = 0;
 
 
-    *asize = 0;
-
     if ( !face || !asize || !face->driver )
       return FT_Err_Invalid_Handle;
 
+    *asize = 0;
+
     driver = face->driver;
     clazz  = driver->clazz;
     memory = face->memory;
@@ -1764,10 +1780,12 @@
   }
 
 
-  static void  ft_recompute_scaled_metrics( FT_Face           face,
-                                            FT_Size_Metrics*  metrics )
-  {                                              
+  static
+  void  ft_recompute_scaled_metrics( FT_Face           face,
+                                     FT_Size_Metrics*  metrics )
+  {
     /* Compute root ascender, descender, test height, and max_advance */
+
     metrics->ascender    = ( FT_MulFix( face->ascender,
                                         metrics->y_scale ) + 32 ) & -64;
 
@@ -1838,13 +1856,13 @@
 
     if ( !char_width )
       char_width = char_height;
-      
+
     else if ( !char_height )
       char_height = char_width;
 
     if ( !horz_resolution )
       horz_resolution = 72;
-      
+
     if ( !vert_resolution )
       vert_resolution = 72;
 
@@ -1853,15 +1871,17 @@
     memory = driver->root.memory;
 
     /* default processing -- this can be overridden by the driver */
-    if ( char_width  < 1 * 64 ) char_width  = 1 * 64;
-    if ( char_height < 1 * 64 ) char_height = 1 * 64;
+    if ( char_width  < 1 * 64 )
+      char_width  = 1 * 64;
+    if ( char_height < 1 * 64 )
+      char_height = 1 * 64;
 
     /* Compute pixel sizes in 26.6 units */
     dim_x = ( ( ( char_width  * horz_resolution ) / 72 ) + 32 ) & -64;
     dim_y = ( ( ( char_height * vert_resolution ) / 72 ) + 32 ) & -64;
 
-    metrics->x_ppem  = (FT_UShort)(dim_x >> 6);
-    metrics->y_ppem  = (FT_UShort)(dim_y >> 6);
+    metrics->x_ppem  = (FT_UShort)( dim_x >> 6 );
+    metrics->y_ppem  = (FT_UShort)( dim_y >> 6 );
 
     metrics->x_scale = 0x10000L;
     metrics->y_scale = 0x10000L;
@@ -1932,8 +1952,10 @@
     else if ( pixel_height == 0 )
       pixel_height = pixel_width;
 
-    if ( pixel_width  < 1 ) pixel_width  = 1;
-    if ( pixel_height < 1 ) pixel_height = 1;
+    if ( pixel_width  < 1 )
+      pixel_width  = 1;
+    if ( pixel_height < 1 )
+      pixel_height = 1;
 
     metrics->x_ppem = pixel_width;
     metrics->y_ppem = pixel_height;
@@ -2067,6 +2089,7 @@
         return 0;
       }
     }
+
     return FT_Err_Invalid_Argument;
   }
 
@@ -2088,8 +2111,8 @@
   /*    FreeType error code.  0 means success.                             */
   /*                                                                       */
   /* <Note>                                                                */
-  /*    This function will return an error when the charmap is not part    */
-  /*    of the face (i.e., if it is not listed in the face->charmaps[]     */
+  /*    This function will return an error if the charmap is not part of   */
+  /*    the face (i.e., if it is not listed in the face->charmaps[]        */
   /*    table).                                                            */
   /*                                                                       */
   FT_EXPORT_FUNC( FT_Error )  FT_Set_Charmap( FT_Face     face,
@@ -2213,32 +2236,37 @@
   /*************************************************************************/
   /*************************************************************************/
 
- /* lookup a renderer by glyph format in the library's list */
-  BASE_FUNC(FT_Renderer)  FT_Lookup_Renderer( FT_Library       library,
-                                              FT_Glyph_Format  format,
-                                              FT_ListNode     *node )
+  /* lookup a renderer by glyph format in the library's list */
+  BASE_FUNC( FT_Renderer )  FT_Lookup_Renderer( FT_Library       library,
+                                                FT_Glyph_Format  format,
+                                                FT_ListNode*     node )
   {
-    FT_ListNode   cur    = library->renderers.head;
+    FT_ListNode   cur;
     FT_Renderer   result = 0;
 
-    
-    if (node)
+
+    if ( !library )
+      goto Exit;
+
+    cur = library->renderers.head;
+
+    if ( node )
     {
-      if (*node)
+      if ( *node )
         cur = (*node)->next;
       *node = 0;
     }
-      
+
     while ( cur )
     {
       FT_Renderer  renderer = FT_RENDERER( cur->data );
-      
 
+
       if ( renderer->glyph_format == format )
       {
         if ( node )
           *node = cur;
-        
+
         result = renderer;
         break;
       }
@@ -2245,17 +2273,19 @@
       cur = cur->next;
     }
 
+  Exit:
     return result;
   }
 
-  
-  static FT_Renderer  ft_lookup_glyph_renderer( FT_GlyphSlot  slot )
+
+  static
+  FT_Renderer  ft_lookup_glyph_renderer( FT_GlyphSlot  slot )
   {
-    FT_Face     face    = slot->face;
-    FT_Library  library = FT_FACE_LIBRARY( face );
-    FT_Renderer result  = library->cur_renderer;
+    FT_Face      face    = slot->face;
+    FT_Library   library = FT_FACE_LIBRARY( face );
+    FT_Renderer  result  = library->cur_renderer;
 
-    
+
     if ( !result || result->glyph_format != slot->format )
       result = FT_Lookup_Renderer( library, slot->format, 0 );
     
@@ -2262,26 +2292,30 @@
     return result;
   }
 
-  
-  static  void  ft_set_current_renderer( FT_Library  library )
+
+  static
+  void  ft_set_current_renderer( FT_Library  library )
   {
     FT_Renderer  renderer;
 
+
     renderer = FT_Lookup_Renderer( library, ft_glyph_format_outline, 0 );
     library->cur_renderer = renderer;
   }
 
 
-  static  FT_Error  ft_add_renderer( FT_Module  module )
+  static
+  FT_Error  ft_add_renderer( FT_Module  module )
   {
     FT_Library   library = module->library;
     FT_Memory    memory  = library->memory;
     FT_Error     error;
     FT_ListNode  node;
-    
+
+
     if ( ALLOC( node, sizeof ( *node ) ) )
       goto Exit;
-      
+
     {
       FT_Renderer         render = FT_RENDERER( module );
       FT_Renderer_Class*  clazz  = (FT_Renderer_Class*)module->clazz;
@@ -2289,7 +2323,7 @@
 
       render->clazz        = clazz;
       render->glyph_format = clazz->glyph_format;
-      
+
       /* allocate raster object if needed */
       if ( clazz->glyph_format == ft_glyph_format_outline &&
            clazz->raster_class->raster_new )
@@ -2297,11 +2331,11 @@
         error = clazz->raster_class->raster_new( memory, &render->raster );
         if ( error )
           goto Fail;
-        
+
         render->raster_render = clazz->raster_class->raster_render;
         render->render        = clazz->render_glyph;
-      }           
-      
+      }
+
       /* add to list */
       node->data = module;
       FT_List_Add( &library->renderers, node );
@@ -2315,10 +2349,11 @@
 
   Exit:
     return error;
-  }                                 
+  }
 
 
-  static void  ft_remove_renderer( FT_Module  module )
+  static
+  void  ft_remove_renderer( FT_Module  module )
   {
     FT_Library   library = module->library;
     FT_Memory    memory  = library->memory;
@@ -2329,16 +2364,16 @@
     if ( node )
     {
       FT_Renderer  render = FT_RENDERER( module );
-      
 
+
       /* release raster object, if any */
       if ( render->raster )
         render->clazz->raster_class->raster_done( render->raster );
-      
+
       /* remove from list */
       FT_List_Remove( &library->renderers, node );
       FREE( node );
-      
+
       ft_set_current_renderer( library );
     }
   }
@@ -2370,8 +2405,10 @@
   FT_EXPORT_FUNC( FT_Renderer )  FT_Get_Renderer( FT_Library       library,
                                                   FT_Glyph_Format  format )
   {
+    /* test for valid `library' delayed to FT_Lookup_Renderer() */
+
     return  FT_Lookup_Renderer( library, format, 0 );
-  }                                               
+  }
 
 
   /*************************************************************************/
@@ -2400,15 +2437,21 @@
   /*                                                                       */
   /*    This doesn't change the current renderer for other formats.        */
   /*                                                                       */
-  FT_EXPORT_DEF( FT_Error ) FT_Set_Renderer( FT_Library     library,
-                                             FT_Renderer    renderer,
-                                             FT_UInt        num_params,
-                                             FT_Parameter*  parameters )
+  FT_EXPORT_DEF( FT_Error )  FT_Set_Renderer( FT_Library     library,
+                                              FT_Renderer    renderer,
+                                              FT_UInt        num_params,
+                                              FT_Parameter*  parameters )
   {
     FT_ListNode  node;
     FT_Error     error = FT_Err_Ok;
-    
 
+
+    if ( !library )
+      return FT_Err_Invalid_Library_Handle;
+
+    if ( !renderer )
+      return FT_Err_Invalid_Argument;
+
     node = FT_List_Find( &library->renderers, renderer );
     if ( !node )
     {
@@ -2417,15 +2460,15 @@
     }
 
     FT_List_Up( &library->renderers, node );
-    
+
     if ( renderer->glyph_format == ft_glyph_format_outline )
       library->cur_renderer = renderer;
-      
+
     if ( num_params > 0 )
     {
       FTRenderer_setMode  set_mode = renderer->clazz->set_mode;
-      
 
+
       for ( ; num_params > 0; num_params-- )
       {
         error = set_mode( renderer, parameters->tag, parameters->data );
@@ -2433,66 +2476,35 @@
           break;
       }
     }
-    
+
   Exit:
     return error;
-  }                                           
+  }
 
 
- /*************************************************************************
-  *
-  *  <Function>
-  *     FT_Render_Glyph
-  *
-  *  <Description>
-  *     Converts a given glyph image to a bitmap. It does so by inspecting
-  *     the glyph image format, find the relevant renderer, and invoke it
-  *
-  *  <Input>
-  *     slot        :: handle to the glyph slot containing the image to
-  *                    convert
-  *
-  *     render_mode :: a set of bit flags indicating which kind of bitmap
-  *                    to render. For now, only 'ft_render_mode_anti_alias'
-  *                    is supported by the available renderers, but others
-  *                    could appear later (e.g. LCD or TV optimised)
-  *
-  *  <Return>
-  *     Error code. 0 means success.
-  *
-  *  <Note>
-  *     in case of success, the renderer will be used to convert glyph
-  *     images in the renderer's known format into bitmaps.
-  *
-  *     This doesn't change the current renderer for other formats..
-  *
-  *     The slot's native image should be considered lost after the
-  *     conversion..
-  *
-  *************************************************************************/
-
   LOCAL_FUNC
-  FT_Error   FT_Render_Glyph_Internal( FT_Library    library,
-                                       FT_GlyphSlot  slot,
-                                       FT_UInt       render_mode )
+  FT_Error  FT_Render_Glyph_Internal( FT_Library    library,
+                                      FT_GlyphSlot  slot,
+                                      FT_UInt       render_mode )
   {
     FT_Error     error = FT_Err_Ok;
     FT_Renderer  renderer;
 
-      
-    /* if it's already a bitmap, no need to do anything */
-    switch (slot->format)
+
+    /* if it is already a bitmap, no need to do anything */
+    switch ( slot->format )
     {
-      case ft_glyph_format_bitmap:   /* already a bitmap, don't do anything */
-        break;
-      
-      default:
+    case ft_glyph_format_bitmap:   /* already a bitmap, don't do anything */
+      break;
+
+    default:
       {
         FT_ListNode  node   = 0;
         FT_Bool      update = 0;
-        
+
+
         /* small shortcut for the very common case */
-        if (slot->format == ft_glyph_format_outline)
+        if ( slot->format == ft_glyph_format_outline )
         {
           renderer = library->cur_renderer;
           node     = library->renderers.head;
@@ -2501,46 +2513,80 @@
           renderer = FT_Lookup_Renderer( library, slot->format, &node );
 
         error = FT_Err_Unimplemented_Feature;
-        while (renderer)
+        while ( renderer )
         {
           error = renderer->render( renderer, slot, render_mode, 0 );
-          if (!error || error != FT_Err_Cannot_Render_Glyph) break;
+          if ( !error || error != FT_Err_Cannot_Render_Glyph )
+            break;
 
-          /* FT_Err_Cannot_Render_Glyph is returned when the render mode */
+          /* FT_Err_Cannot_Render_Glyph is returned if the render mode   */
           /* is unsupported by the current renderer for this glyph image */
-          /* format..                                                    */
-          
-          /* now, look for another renderer that supports the same  */
-          /* format..                                              */
+          /* format.                                                     */
+
+          /* now, look for another renderer that supports the same */
+          /* format.                                               */
           renderer = FT_Lookup_Renderer( library, slot->format, &node );
           update   = 1;
         }
 
         /* if we changed the current renderer for the glyph image format */
-        /* we need to select it as the next current one..                */
-        if (!error && update && renderer)
+        /* we need to select it as the next current one                  */
+        if ( !error && update && renderer )
           FT_Set_Renderer( library, renderer, 0, 0 );
       }
     }
-    
+
     return error;
   }
 
 
-
-  FT_EXPORT_FUNC(FT_Error)  FT_Render_Glyph( FT_GlyphSlot  slot,
-                                             FT_UInt       render_mode )
+  /*************************************************************************/
+  /*                                                                       */
+  /* <Function>                                                            */
+  /*    FT_Render_Glyph                                                    */
+  /*                                                                       */
+  /* <Description>                                                         */
+  /*    Converts a given glyph image to a bitmap.  It does so by           */
+  /*    inspecting the glyph image format, find the relevant renderer, and */
+  /*    invoke it.                                                         */
+  /*                                                                       */
+  /* <Input>                                                               */
+  /*    slot        :: A handle to the glyph slot containing the image to  */
+  /*                   convert.                                            */
+  /*                                                                       */
+  /*    render_mode :: A set of bit flags indicating which kind of bitmap  */
+  /*                   to render.  For now, only                           */
+  /*                   `ft_render_mode_anti_alias' is supported by the     */
+  /*                   available renderers, but others could appear later  */
+  /*                   (e.g. optimized for TV or LCD).                     */
+  /*                                                                       */
+  /* <Return>                                                              */
+  /*    FreeType error code.  0 means success.                             */
+  /*                                                                       */
+  /* <Note>                                                                */
+  /*    In case of success, the renderer will be used to convert glyph     */
+  /*    images in the renderer's known format into bitmaps.                */
+  /*                                                                       */
+  /*    This doesn't change the current renderer for other formats.        */
+  /*                                                                       */
+  /*    The slot's native image should be considered lost after the        */
+  /*    conversion.                                                        */
+  /*                                                                       */
+  FT_EXPORT_FUNC( FT_Error )  FT_Render_Glyph( FT_GlyphSlot  slot,
+                                               FT_UInt       render_mode )
   {
     FT_Library   library;
-    
-    if (!slot)
+
+
+    if ( !slot )
       return FT_Err_Invalid_Argument;
-      
-    library = FT_FACE_LIBRARY(slot->face);
+
+    library = FT_FACE_LIBRARY( slot->face );
+
     return FT_Render_Glyph_Internal( library, slot, render_mode );
   }
 
-  
+
   /*************************************************************************/
   /*************************************************************************/
   /*************************************************************************/
@@ -2625,10 +2671,13 @@
     FT_UInt    nn;
 
 
-#define FREETYPE_VER_FIXED ( ( (FT_Long)FREETYPE_MAJOR << 16 ) | \
-                               FREETYPE_MINOR                  )
+#define FREETYPE_VER_FIXED  ( ( (FT_Long)FREETYPE_MAJOR << 16 ) | \
+                                FREETYPE_MINOR                  )
 
-    if ( !library || !clazz )
+    if ( !library )
+      return FT_Err_Invalid_Library_Handle;
+
+    if ( !clazz )
       return FT_Err_Invalid_Argument;
 
     /* check freetype version */
@@ -2665,13 +2714,13 @@
     if ( ALLOC( module,clazz->module_size ) )
       goto Exit;
 
-    /* base initialisation */
+    /* base initialization */
     module->library = library;
     module->memory  = memory;
     module->clazz   = (FT_Module_Class*)clazz;
 
-    /* if the module is a renderer - this must be performed before */
-    /* the normal module initialization.                           */
+    /* check whether the module is a renderer - this must be performed */
+    /* before the normal module initialization                         */
     if ( FT_MODULE_IS_RENDERER( module ) )
     {
       /* add to the renderers list */
@@ -2686,7 +2735,7 @@
       /* allocate glyph loader if needed */
       FT_Driver   driver = FT_DRIVER( module );
 
-      
+
       driver->clazz = (FT_Driver_Class*)module->clazz;
       if ( FT_DRIVER_USES_OUTLINES( driver ) )
       {
@@ -2705,20 +2754,20 @@
 
     /* add module to the library's table */
     library->modules[library->num_modules++] = module;
-      
+
   Exit:
     return error;
-    
+
   Fail:
     if ( FT_MODULE_IS_DRIVER( module ) )
     {
       FT_Driver  driver = FT_DRIVER( module );
-      
 
+
       if ( FT_DRIVER_USES_OUTLINES( driver ) )
         FT_GlyphLoader_Done( driver->glyph_loader );
     }
-    
+
     if ( FT_MODULE_IS_RENDERER( module ) )
     {
       FT_Renderer  renderer = FT_RENDERER( module );
@@ -2756,11 +2805,17 @@
   FT_EXPORT_FUNC( FT_Module ) FT_Get_Module( FT_Library   library,
                                              const char*  module_name )
   {
-    FT_Module  result = 0;
-    FT_Module* cur    = library->modules;
-    FT_Module* limit  = cur + library->num_modules;
+    FT_Module   result = 0;
+    FT_Module*  cur;
+    FT_Module*  limit;
 
 
+    if ( !library || !module_name )
+      return result;
+
+    cur   = library->modules;
+    limit = cur + library->num_modules;
+
     for ( ; cur < limit; cur++ )
       if ( strcmp( cur[0]->clazz->module_name, module_name ) == 0 )
       {
@@ -2793,17 +2848,19 @@
   /*    You should better be familiar with FreeType internals to know      */
   /*    which module to look for, and what its interface is :-)            */
   /*                                                                       */
-  FT_EXPORT_FUNC(const void*)  FT_Get_Module_Interface(
-                                 FT_Library   library,
-                                 const char*  mod_name )
+  FT_EXPORT_FUNC( const void* )  FT_Get_Module_Interface(
+                                   FT_Library   library,
+                                   const char*  mod_name )
   {
     FT_Module  module;
-    
 
+
+    /* test for valid `library' delayed to FT_Get_Module() */
+
     module = FT_Get_Module( library, mod_name );
 
     return module ? module->clazz->module_interface : 0;
-  }                                                 
+  }
 
 
   /*************************************************************************/
@@ -2815,9 +2872,9 @@
   /*    Removes a given module from a library instance.                    */
   /*                                                                       */
   /* <Input>                                                               */
-  /*    library  :: A handle to a library object.                          */
+  /*    library :: A handle to a library object.                           */
   /*                                                                       */
-  /*    module   :: A handle to a module object.                           */
+  /*    module  :: A handle to a module object.                            */
   /*                                                                       */
   /* <Return>                                                              */
   /*    FreeType error code.  0 means success.                             */
@@ -2829,7 +2886,11 @@
                                                 FT_Module   module )
   {
     /* try to find the module from the table, then remove it from there */
-    if ( library && module )
+
+    if ( !library )
+      return FT_Err_Invalid_Library_Handle;
+
+    if ( module )
     {
       FT_Module*  cur   = library->modules;
       FT_Module*  limit = cur + library->num_modules;
@@ -2837,7 +2898,7 @@
 
       for ( ; cur < limit; cur++ )
       {
-        if (cur[0] == module)
+        if ( cur[0] == module )
         {
           /* remove it from the table */
           library->num_modules--;
--- a/src/base/ftoutln.c
+++ b/src/base/ftoutln.c
@@ -174,50 +174,48 @@
           }
 
         case FT_Curve_Tag_Conic:  /* consume conic arcs */
+          v_control.x = SCALED( point->x );
+          v_control.y = SCALED( point->y );
+
+        Do_Conic:
+          if ( point < limit )
           {
-            v_control.x = SCALED( point->x );
-            v_control.y = SCALED( point->y );
+            FT_Vector  vec;
+            FT_Vector  v_middle;
 
-          Do_Conic:
-            if ( point < limit )
-            {
-              FT_Vector  vec;
-              FT_Vector  v_middle;
 
+            point++;
+            tags++;
+            tag = FT_CURVE_TAG( tags[0] );
 
-              point++;
-              tags++;
-              tag = FT_CURVE_TAG( tags[0] );
+            vec.x = SCALED( point->x );
+            vec.y = SCALED( point->y );
 
-              vec.x = SCALED( point->x );
-              vec.y = SCALED( point->y );
-
-              if ( tag == FT_Curve_Tag_On )
-              {
-                error = interface->conic_to( &v_control, &vec, user );
-                if ( error )
-                  goto Exit;
-                continue;
-              }
-
-              if ( tag != FT_Curve_Tag_Conic )
-                goto Invalid_Outline;
-
-              v_middle.x = ( v_control.x + vec.x ) / 2;
-              v_middle.y = ( v_control.y + vec.y ) / 2;
-
-              error = interface->conic_to( &v_control, &v_middle, user );
+            if ( tag == FT_Curve_Tag_On )
+            {
+              error = interface->conic_to( &v_control, &vec, user );
               if ( error )
                 goto Exit;
-
-              v_control = vec;
-              goto Do_Conic;
+              continue;
             }
 
-            error = interface->conic_to( &v_control, &v_start, user );
-            goto Close;
+            if ( tag != FT_Curve_Tag_Conic )
+              goto Invalid_Outline;
+
+            v_middle.x = ( v_control.x + vec.x ) / 2;
+            v_middle.y = ( v_control.y + vec.y ) / 2;
+
+            error = interface->conic_to( &v_control, &v_middle, user );
+            if ( error )
+              goto Exit;
+
+            v_control = vec;
+            goto Do_Conic;
           }
 
+          error = interface->conic_to( &v_control, &v_start, user );
+          goto Close;
+
         default:  /* FT_Curve_Tag_Cubic */
           {
             FT_Vector  vec1, vec2;
@@ -256,7 +254,7 @@
       /* close the contour with a line segment */
       error = interface->line_to( &v_start, user );
 
-   Close:
+    Close:
       if ( error )
         goto Exit;
 
@@ -549,6 +547,7 @@
         char*  q = outline->tags + last;
         char   swap;
 
+
         while ( p < q )
         {
           swap = *p;
@@ -604,34 +603,46 @@
                                                  FT_Outline*        outline,
                                                  FT_Raster_Params*  params )
   {
-    FT_Error         error;
-    FT_Bool          update   = 0;
-    FT_Renderer      renderer = library->cur_renderer;
-    FT_ListNode      node     = library->renderers.head;
+    FT_Error     error;
+    FT_Bool      update = 0;
+    FT_Renderer  renderer;
+    FT_ListNode  node;
 
+
+    if ( !library )
+      return FT_Err_Invalid_Library_Handle;
+
+    if ( !params )
+      return FT_Err_Invalid_Argument;
+
+    renderer = library->cur_renderer;
+    node     = library->renderers.head;
+
     params->source = (void*)outline;
-        
+
     error = FT_Err_Cannot_Render_Glyph;
-    while (renderer)
+    while ( renderer )
     {
       error = renderer->raster_render( renderer->raster, params );
-      if (!error || error != FT_Err_Cannot_Render_Glyph) break;
+      if ( !error || error != FT_Err_Cannot_Render_Glyph )
+        break;
 
       /* FT_Err_Cannot_Render_Glyph is returned when the render mode */
       /* is unsupported by the current renderer for this glyph image */
-      /* format..                                                    */
-      
-      /* now, look for another renderer that supports the same  */
-      /* format..                                              */
-      renderer = FT_Lookup_Renderer( library, ft_glyph_format_outline, &node );
+      /* format                                                      */
+
+      /* now, look for another renderer that supports the same */
+      /* format                                                */
+      renderer = FT_Lookup_Renderer( library, ft_glyph_format_outline,
+                                     &node );
       update   = 1;
     }
 
     /* if we changed the current renderer for the glyph image format */
-    /* we need to select it as the next current one..                */
-    if (!error && update && renderer)
+    /* we need to select it as the next current one                  */
+    if ( !error && update && renderer )
       FT_Set_Renderer( library, renderer, 0, 0 );
-      
+
     return error;
   }
 
@@ -675,7 +686,7 @@
     if ( !bitmap )
       return FT_Err_Invalid_Argument;
 
-    /* other checks are delayed to FT_Outline_Render */
+    /* other checks are delayed to FT_Outline_Render() */
 
     params.target = bitmap;
     params.flags  = 0;
@@ -713,6 +724,9 @@
     FT_Pos xz, yz;
 
 
+    if ( !vector || !matrix )
+      return;
+
     xz = FT_MulFix( vector->x, matrix->xx ) +
          FT_MulFix( vector->y, matrix->xy );
 
@@ -750,7 +764,7 @@
   {
     FT_Vector*  vec = outline->points;
     FT_Vector*  limit = vec + outline->n_points;
-    
+
 
     for ( ; vec < limit; vec++ )
       FT_Vector_Transform( vec, matrix );
--- a/src/base/ftstream.c
+++ b/src/base/ftstream.c
@@ -374,9 +374,9 @@
   BASE_FUNC( FT_Short )  FT_Read_Short( FT_Stream  stream,
                                         FT_Error*  error )
   {
-    char     reads[2];
-    char*    p = 0;
-    FT_Short result = 0;
+    char      reads[2];
+    char*     p = 0;
+    FT_Short  result = 0;
 
 
     FT_Assert( stream );
@@ -645,27 +645,24 @@
         *(FT_UShort*)p = (FT_UShort)value;
         break;
 
-     /* A slight note regarding the following:                    */
-     /*                                                           */
-     /*  SIZEOF_INT is defined in <freetype/config/ftconfig.h>    */
-     /*  and gives the size in bytes of the "int" type on the     */
-     /*  current platform..                                       */
-     /*                                                           */
-     /*  Only on 16-bit systems can the value of SIZEOF_INT be    */
-     /*  less than 4. In this case SIZEOF_LONG is always 4        */
-     /*                                                           */
-     /*  On a 64-bit system, SIZEOF_LONG can be 8, which is       */
-     /*  handled by the default case..                            */
-     /*                                                           */
-
+        /* SIZEOF_INT is defined in <freetype/config/ftconfig.h> */
+        /* and gives the size in bytes of the `int' type on the  */
+        /* current platform.                                     */
+        /*                                                       */
+        /* Only on 16-bit systems the value of SIZEOF_INT can be */
+        /* less than 4.  In this case SIZEOF_LONG is always 4.   */
+        /*                                                       */
+        /* On a 64-bit system, SIZEOF_LONG can be 8, which is    */
+        /* handled by the default case.                          */
+        /*                                                       */
 #if SIZEOF_INT == 4
       case 4:
-         *(FT_UInt*)p = (FT_UInt)value;
-         break;
+        *(FT_UInt*)p = (FT_UInt)value;
+        break;
 #endif
 
       default:
-         *(FT_ULong*)p = (FT_ULong)value;
+        *(FT_ULong*)p = (FT_ULong)value;
       }
 
       /* go to next field */
--- a/src/base/ftsystem.c
+++ b/src/base/ftsystem.c
@@ -44,8 +44,9 @@
 
   /*************************************************************************/
   /*                                                                       */
-  /* It is not necessary to do any error checking here.  This will be done */
-  /* by the higher level routines like FT_Alloc() or FT_Realloc().         */
+  /* It is not necessary to do any error checking for the                  */
+  /* allocation-related functions.  This will be done by the higher level  */
+  /* routines like FT_Alloc() or FT_Realloc().                             */
   /*                                                                       */
   /*************************************************************************/
 
@@ -233,6 +234,9 @@
   {
     FILE*  file;
 
+
+    if ( !stream )
+      return FT_Err_Invalid_Stream_Handle;
 
     file = fopen( filepathname, "rb" );
     if ( !file )
--- a/src/cff/t2driver.c
+++ b/src/cff/t2driver.c
@@ -303,12 +303,12 @@
       0x20000L,
 
       0,   /* module-specific interface */
-      
+
       (FT_Module_Constructor)T2_Init_Driver,
       (FT_Module_Destructor) T2_Done_Driver,
       (FT_Module_Requester)  t2_get_interface,
     },
-    
+
     /* now the specific driver fields */
     sizeof( TT_FaceRec ),
     sizeof( FT_SizeRec ),
@@ -323,7 +323,7 @@
 
     (FTDriver_setCharSizes) 0,
     (FTDriver_setPixelSizes)0,
-    
+
     (FTDriver_loadGlyph)    Load_Glyph,
     (FTDriver_getCharIndex) Get_Char_Index,
 
--- a/src/cff/t2gload.c
+++ b/src/cff/t2gload.c
@@ -233,7 +233,7 @@
     {
       FT_GlyphLoader*  loader = glyph->root.loader;
 
-      
+
       builder->loader  = loader;
       builder->base    = &loader->base.outline;
       builder->current = &loader->current.outline;
@@ -351,31 +351,33 @@
   }
 
 
- /* this function is used to select the locals subrs array */
+  /* this function is used to select the locals subrs array */
   LOCAL_DEF
-  void   T2_Prepare_Decoder( T2_Decoder*  decoder,
-                             FT_UInt      glyph_index )
+  void  T2_Prepare_Decoder( T2_Decoder*  decoder,
+                            FT_UInt      glyph_index )
   {
     CFF_Font*     cff = (CFF_Font*)decoder->builder.face->extra.data;
     CFF_SubFont*  sub = &cff->top_font;
-    
+
+
     /* manage CID fonts */
-    if (cff->num_subfonts >= 1)
+    if ( cff->num_subfonts >= 1 )
     {
       FT_Byte  fd_index = CFF_Get_FD( &cff->fd_select, glyph_index );
+
+
       sub = cff->subfonts[fd_index];
     }
-    
-    decoder->num_locals  = sub->num_local_subrs;
-    decoder->locals      = sub->local_subrs;
-    decoder->locals_bias = t2_compute_bias( decoder->num_locals );
 
+    decoder->num_locals    = sub->num_local_subrs;
+    decoder->locals        = sub->local_subrs;
+    decoder->locals_bias   = t2_compute_bias( decoder->num_locals );
+
     decoder->glyph_width   = sub->private_dict.default_width;
     decoder->nominal_width = sub->private_dict.nominal_width;
-  }                                 
+  }
 
 
-
   /* check that there is enough room for `count' more points */
   static
   FT_Error  check_points( T2_Builder*  builder,
@@ -382,7 +384,7 @@
                           FT_Int       count )
   {
     return FT_GlyphLoader_Check_Points( builder->loader, count, 0 );
-  }                                         
+  }
 
 
   /* add a new point, do not check space */
@@ -447,7 +449,7 @@
     {
       if ( outline->n_contours > 0 )
         outline->contours[outline->n_contours - 1] = outline->n_points - 1;
-  
+
       outline->n_contours++;
     }
 
@@ -528,6 +530,7 @@
     FT_Fixed            seed;
     FT_Fixed*           stack;
 
+
     /* set default width */
     decoder->num_hints  = 0;
     decoder->read_width = 1;
@@ -1087,10 +1090,12 @@
 
         case t2_op_rlinecurve:
           {
-            FT_Int    num_lines = (num_args-6)/2;
+            FT_Int  num_lines = ( num_args - 6 ) / 2;
+
+
             FT_TRACE4(( " rlinecurve" ));
             
-            if ( num_args < 8 || (num_args-6) & 1)
+            if ( num_args < 8 || ( num_args - 6 ) & 1 )
               goto Stack_Underflow;
               
             if ( start_point( builder, x, y )           ||
@@ -1100,7 +1105,7 @@
             args = stack;
             
             /* first, add the line segments */
-            while (num_lines > 0)
+            while ( num_lines > 0 )
             {
               x += args[0];
               y += args[1];
@@ -1109,7 +1114,7 @@
               num_lines--;
             }
             
-            /* then, the curve */
+            /* then the curve */
             x += args[0];
             y += args[1];
             add_point( builder, x, y, 0 );
@@ -1125,12 +1130,12 @@
           
         case t2_op_rcurveline:
           {
-            FT_Int  num_curves = (num_args-2)/6;
+            FT_Int  num_curves = ( num_args - 2 ) / 6;
 
 
             FT_TRACE4(( " rcurveline" ));
 
-            if ( num_args < 8 || (num_args-2) % 6  )
+            if ( num_args < 8 || ( num_args - 2 ) % 6 )
               goto Stack_Underflow;
 
             if ( start_point ( builder, x, y )             ||
@@ -1138,8 +1143,9 @@
               goto Memory_Error;
 
             args = stack;
+
             /* first, add the curves */
-            while (num_curves > 0)
+            while ( num_curves > 0 )
             {
               x += args[0];
               y += args[1];
@@ -1153,6 +1159,7 @@
               args += 6;
               num_curves--;
             }
+
             /* then the final line */
             x += args[0];
             y += args[1];
@@ -1549,15 +1556,15 @@
     return error;
 
   Syntax_Error:
-    FT_TRACE4(( "** Syntax Error **" ));
+    FT_TRACE4(( "T2_Parse_CharStrings: syntax error!" ));
     return T2_Err_Invalid_File_Format;
 
   Stack_Underflow:
-    FT_TRACE4(( "** Stack underflow **" ));
+    FT_TRACE4(( "T2_Parse_CharStrings: stack underflow!" ));
     return T2_Err_Too_Few_Arguments;
 
   Stack_Overflow:
-    FT_TRACE4(( "** Stack overflow**" ));
+    FT_TRACE4(( "T2_Parse_CharStrings: stack overflow!" ));
     return T2_Err_Stack_Overflow;
 
   Memory_Error:
--- a/src/cff/t2gload.h
+++ b/src/cff/t2gload.h
@@ -167,8 +167,8 @@
                          T2_GlyphSlot  slot );
 
   LOCAL_DEF
-  void   T2_Prepare_Decoder( T2_Decoder*  decoder,
-                             FT_UInt     glyph_index );
+  void  T2_Prepare_Decoder( T2_Decoder*  decoder,
+                            FT_UInt      glyph_index );
 
 #if 0  /* unused until we support pure CFF fonts */
 
--- a/src/cff/t2load.c
+++ b/src/cff/t2load.c
@@ -318,26 +318,27 @@
 
 #endif /* 0 */
 
- /**********************************************************************/
- /**********************************************************************/
- /***                                                                ***/
- /***   FD Select table support                                      ***/
- /***                                                                ***/
- /***                                                                ***/
- /**********************************************************************/
- /**********************************************************************/
 
+  /*************************************************************************/
+  /*************************************************************************/
+  /***                                                                   ***/
+  /***   FD Select table support                                         ***/
+  /***                                                                   ***/
+  /*************************************************************************/
+  /*************************************************************************/
+
+
   static
   void  CFF_Done_FD_Select( CFF_FD_Select*  select,
                             FT_Stream       stream )
   {
-    if (select->data)
+    if ( select->data )
       RELEASE_Frame( select->data );
-      
+
     select->data_size   = 0;
     select->format      = 0;
     select->range_count = 0;
-  }                            
+  }
 
 
   static
@@ -349,42 +350,44 @@
     FT_Error       error;
     FT_Byte        format;
     FT_UInt        num_ranges;
-    
+
+
     /* read format */
-    if ( FILE_Seek(offset) || READ_Byte(format) )
+    if ( FILE_Seek( offset ) || READ_Byte( format ) )
       goto Exit;
     
     select->format      = format;
     select->cache_count = 0;   /* clear cache */
-    switch (format)
+
+    switch ( format )
     {
-      case 0:  /* format 0, that's simple */
-         {
-           select->data_size = num_glyphs;
-           goto Load_Data;
-         }
-         
-         
-      case 3:  /* format 3, a tad more complex */
-         {
-           if ( READ_UShort(num_ranges) )
-             goto Exit;
-             
-           select->data_size = num_ranges*3+2;
-           
-         Load_Data:  
-           if ( EXTRACT_Frame( select->data_size, select->data ) )
-             goto Exit;
-         }
-         break;
-         
-         
-      default: /* humm.. that's wrong */
-        error = FT_Err_Invalid_File_Format;
+    case 0:     /* format 0, that's simple */
+      {
+        select->data_size = num_glyphs;
+        goto Load_Data;
+      }
+
+    case 3:     /* format 3, a tad more complex */
+      {
+        if ( READ_UShort( num_ranges ) )
+          goto Exit;
+
+        select->data_size = num_ranges * 3 + 2;
+
+      Load_Data:
+        if ( EXTRACT_Frame( select->data_size, select->data ) )
+          goto Exit;
+      }
+      break;
+
+
+    default:    /* humm... that's wrong */
+      error = FT_Err_Invalid_File_Format;
     }
+
   Exit:
     return error;
-  }                                
+  }
 
 
   LOCAL_FUNC
@@ -392,69 +395,71 @@
                        FT_UInt         glyph_index )
   {
     FT_Byte  fd = 0;
-    
-    switch (select->format)
+
+
+    switch ( select->format )
     {
-      case 0:
-        fd = select->data[glyph_index];
+    case 0:
+      fd = select->data[glyph_index];
+      break;
+
+    case 3:
+      /* first, compare to cache */
+      if ( (FT_UInt)(glyph_index-select->cache_first) < select->cache_count )
+      {
+        fd = select->cache_fd;
         break;
-        
-      case 3:
-        /* first, compare to cache */
-        if ((FT_UInt)(glyph_index-select->cache_first) < select->cache_count)
+      }
+
+      /* then, lookup the ranges array */
+      {
+        FT_Byte*  p       = select->data;
+        FT_Byte*  p_limit = p + select->data_size;
+        FT_Byte   fd2;
+        FT_UInt   first, limit;
+
+
+        first = NEXT_UShort( p );
+        do
         {
-          fd = select->cache_fd;
-          break;
-        }
-        
-        /* then, lookup the ranges array */
-        {
-          FT_Byte*  p       = select->data;
-          FT_Byte*  p_limit = p + select->data_size;
-          FT_Byte   fd2;
-          FT_UInt   first, limit;
-          
-          first = NEXT_UShort(p);
-          do
+          if ( glyph_index < first )
+            break;
+
+          fd2   = *p++;
+          limit = NEXT_UShort( p );
+
+          if ( glyph_index < limit )
           {
-            if (glyph_index < first)
-              break;
-              
-            fd2   = *p++;
-            limit = NEXT_UShort(p);
-            
-            if (glyph_index < limit)
-            {
-              fd = fd2;
-              
-              /* update cache */
-              select->cache_first = first;
-              select->cache_count = limit-first;
-              select->cache_fd    = fd2;
-              break;
-            }
-            first = limit;
+            fd = fd2;
+
+            /* update cache */
+            select->cache_first = first;
+            select->cache_count = limit-first;
+            select->cache_fd    = fd2;
+            break;
           }
-          while (p < p_limit);
-        }
-        break;
-        
-      default:
-        ;
+          first = limit;
+        } while ( p < p_limit );
+      }
+      break;
+
+    default:
+      ;
     }
+
     return fd;
-  }                       
+  }
 
 
- /**********************************************************************/
- /**********************************************************************/
- /***                                                                ***/
- /***   CFF font support                                             ***/
- /***                                                                ***/
- /***                                                                ***/
- /**********************************************************************/
- /**********************************************************************/
+  /*************************************************************************/
+  /*************************************************************************/
+  /***                                                                   ***/
+  /***   CFF font support                                                ***/
+  /***                                                                   ***/
+  /*************************************************************************/
+  /*************************************************************************/
 
+
   static
   FT_Error  CFF_Load_SubFont( CFF_SubFont*  font,
                               CFF_Index*    index,
@@ -462,13 +467,14 @@
                               FT_Stream     stream,
                               FT_ULong      base_offset )
   {
-    FT_Error       error;
-    T2_Parser      parser;
-    FT_Byte*       dict;
-    FT_ULong       dict_len;
+    FT_Error        error;
+    T2_Parser       parser;
+    FT_Byte*        dict;
+    FT_ULong        dict_len;
     CFF_Font_Dict*  top  = &font->font_dict;
-    CFF_Private*   priv = &font->private_dict;
+    CFF_Private*    priv = &font->private_dict;
 
+
     T2_Parser_Init( &parser, T2CODE_TOPDICT, &font->font_dict );
 
     /* set defaults */
@@ -494,11 +500,11 @@
       goto Exit;
 
     /* parse the private dictionary, if any */
-    if ( top->private_offset && top->private_size)
+    if ( top->private_offset && top->private_size )
     {
       /* set defaults */
-      MEM_Set( priv, 0, sizeof(*priv) );
-      
+      MEM_Set( priv, 0, sizeof ( *priv ) );
+
       priv->blue_shift       = 7;
       priv->blue_fuzz        = 1;
       priv->lenIV            = -1;
@@ -508,7 +514,7 @@
       T2_Parser_Init( &parser, T2CODE_PRIVATE, priv );
 
       if ( FILE_Seek( base_offset + font->font_dict.private_offset ) ||
-           ACCESS_Frame( font->font_dict.private_size )               )
+           ACCESS_Frame( font->font_dict.private_size )              )
         goto Exit;
 
       error = T2_Parser_Run( &parser,
@@ -529,7 +535,7 @@
       error = t2_new_cff_index( &font->local_subrs_index, stream, 1 );
       if ( error )
         goto Exit;
-        
+
       font->num_local_subrs = font->local_subrs_index.count;
       error = t2_explicit_cff_index( &font->local_subrs_index,
                                      &font->local_subrs );
@@ -544,15 +550,14 @@
   void  CFF_Done_SubFont( FT_Memory     memory,
                           CFF_SubFont*  subfont )
   {
-    if (subfont)
+    if ( subfont )
     {
       t2_done_cff_index( &subfont->local_subrs_index );
       FREE( subfont->local_subrs );
     }
-  }                          
+  }
 
 
-
   LOCAL_FUNC
   FT_Error  T2_Load_CFF_Font( FT_Stream  stream,
                               FT_Int     face_index,
@@ -599,7 +604,7 @@
 
     /* read the name, top dict, string and global subrs index */
     error = t2_new_cff_index( &font->name_index, stream, 0 )       ||
-            t2_new_cff_index( &font->font_dict_index, stream, 0 )   ||
+            t2_new_cff_index( &font->font_dict_index, stream, 0 )  ||
             t2_new_cff_index( &font->string_index, stream, 0 )     ||
             t2_new_cff_index( &font->global_subrs_index, stream, 1 );
     if ( error )
@@ -615,9 +620,9 @@
     }
 
     /* in case of a font format check, simply exit now */
-    if (face_index < 0)
+    if ( face_index < 0 )
       goto Exit;
-      
+
     /* now, parse the top-level font dictionary */
     error = CFF_Load_SubFont( &font->top_font,
                               &font->font_dict_index,
@@ -624,7 +629,7 @@
                               face_index,
                               stream,
                               base_offset );
-    if (error)
+    if ( error )
       goto Exit;
 
     /* now, check for a CID font */
@@ -634,20 +639,22 @@
       CFF_SubFont*  sub;
       FT_UInt       index;
 
+
       /* this is a CID-keyed font, we must now allocate a table of */
-      /* sub-fonts, then load each of them separately..            */
+      /* sub-fonts, then load each of them separately              */
       if ( FILE_Seek( base_offset + dict->cid_fd_array_offset ) )
         goto Exit;
-        
+
       error = t2_new_cff_index( &fd_index, stream, 0 );
-      if (error) goto Exit;
-      
-      if (fd_index.count > CFF_MAX_CID_FONTS)
+      if ( error )
+        goto Exit;
+
+      if ( fd_index.count > CFF_MAX_CID_FONTS )
       {
         FT_ERROR(( "T2_Load_CFF_Font: FD array too large in CID font\n" ));
         goto Fail_CID;
       }
-      
+
       /* allocate & read each font dict independently */
       font->num_subfonts = fd_index.count;
       if ( ALLOC_ARRAY( sub, fd_index.count, CFF_SubFont ) )
@@ -656,13 +663,15 @@
       /* setup pointer table */
       for ( index = 0; index < fd_index.count; index++ )
         font->subfonts[index] = sub + index;
-        
+
       /* now load each sub font independently */
       for ( index = 0; index < fd_index.count; index++ )
       {
         sub = font->subfonts[index];
-        error = CFF_Load_SubFont( sub, &fd_index, index, stream, base_offset );
-        if (error) goto Fail_CID;
+        error = CFF_Load_SubFont( sub, &fd_index, index,
+                                  stream, base_offset );
+        if ( error )
+          goto Fail_CID;
       }
 
       /* now load the FD Select array */
@@ -673,8 +682,8 @@
 
    Fail_CID:
       t2_done_cff_index( &fd_index );
-      
-      if (error)
+
+      if ( error )
         goto Exit;
     }
     else
@@ -713,8 +722,6 @@
   }
 
 
-
-
   LOCAL_FUNC
   void  T2_Done_CFF_Font( CFF_Font*  font )
   {
@@ -721,20 +728,21 @@
     FT_Memory  memory = font->memory;
     FT_UInt    index;
 
+
     t2_done_cff_index( &font->global_subrs_index );
     t2_done_cff_index( &font->string_index );
     t2_done_cff_index( &font->font_dict_index );
     t2_done_cff_index( &font->name_index );
     t2_done_cff_index( &font->charstrings_index );
-    
+
     /* release font dictionaries */
     for ( index = 0; index < font->num_subfonts; index++ )
       CFF_Done_SubFont( memory, font->subfonts[index] );
-    
+
     CFF_Done_SubFont( memory, &font->top_font );
-    
+
     CFF_Done_FD_Select( &font->fd_select, font->stream );
-    
+
     FREE( font->global_subrs );
     FREE( font->font_name );
   }
--- a/src/cff/t2objs.c
+++ b/src/cff/t2objs.c
@@ -198,7 +198,7 @@
 #ifdef TT_CONFIG_OPTION_EXTEND_ENGINE
     return TT_Init_Extensions( driver );
 #else
-    UNUSED(driver);
+    UNUSED( driver );
     return T2_Err_Ok;
 #endif
   }
@@ -222,7 +222,7 @@
 #ifdef TT_CONFIG_OPTION_EXTEND_ENGINE
     TT_Done_Extensions( driver );
 #else
-    UNUSED(driver);    
+    UNUSED( driver );
 #endif
   }
 
--- a/src/cff/t2parse.c
+++ b/src/cff/t2parse.c
@@ -280,9 +280,9 @@
   FT_Error  parse_font_matrix( T2_Parser*  parser )
   {
     CFF_Font_Dict*  dict   = (CFF_Font_Dict*)parser->object;
-    FT_Matrix*     matrix = &dict->font_matrix;
-    FT_Byte**      data   = parser->stack;
-    FT_Error       error;
+    FT_Matrix*      matrix = &dict->font_matrix;
+    FT_Byte**       data   = parser->stack;
+    FT_Error        error;
 
 
     error = T2_Err_Stack_Underflow;
@@ -304,9 +304,9 @@
   FT_Error  parse_font_bbox( T2_Parser*  parser )
   {
     CFF_Font_Dict*  dict   = (CFF_Font_Dict*)parser->object;
-    FT_BBox*       bbox   = &dict->font_bbox;
-    FT_Byte**      data   = parser->stack;
-    FT_Error       error;
+    FT_BBox*        bbox   = &dict->font_bbox;
+    FT_Byte**       data   = parser->stack;
+    FT_Error        error;
 
 
     error = T2_Err_Stack_Underflow;
@@ -328,8 +328,8 @@
   FT_Error  parse_private_dict( T2_Parser*  parser )
   {
     CFF_Font_Dict*  dict = (CFF_Font_Dict*)parser->object;
-    FT_Byte**      data = parser->stack;
-    FT_Error       error;
+    FT_Byte**       data = parser->stack;
+    FT_Error        error;
 
 
     error = T2_Err_Stack_Underflow;
@@ -349,8 +349,8 @@
   FT_Error  parse_cid_ros( T2_Parser*  parser )
   {
     CFF_Font_Dict*  dict   = (CFF_Font_Dict*)parser->object;
-    FT_Byte**      data   = parser->stack;
-    FT_Error       error;
+    FT_Byte**       data   = parser->stack;
+    FT_Error        error;
 
 
     error = T2_Err_Stack_Underflow;
@@ -395,7 +395,7 @@
             code | T2CODE,                           \
             (FT_UInt)(char*)&T2_REF( T2TYPE, name ), \
             sizeof( T2_REF( T2TYPE, name ) ),        \
-            0, 0, 0                               \
+            0, 0, 0                                  \
           },
 
 #undef  T2_FIELD_DELTA
@@ -478,7 +478,8 @@
         /* and look for it in our current list.                            */
 
         FT_UInt                  code;
-        FT_UInt                   num_args = (FT_UInt)(parser->top - parser->stack);
+        FT_UInt                  num_args = (FT_UInt)
+                                              ( parser->top - parser->stack );
         const T2_Field_Handler*  field;
 
 
@@ -516,28 +517,35 @@
             case t2_kind_fixed:
               val = t2_parse_fixed( parser->stack );
 
-            /* A slight note regarding the following:                    */
-            /*                                                           */
-            /*  SIZEOF_INT is defined in <freetype/config/ftconfig.h>    */
-            /*  and gives the size in bytes of the "int" type on the     */
-            /*  current platform..                                       */
-            /*                                                           */
-            /*  Only on 16-bit systems can the value of SIZEOF_INT be    */
-            /*  less than 4. In this case SIZEOF_LONG is always 4        */
-            /*                                                           */
-            /*  On a 64-bit system, SIZEOF_LONG can be 8, which is       */
-            /*  handled by the default case..                            */
-            /*                                                           */
-
+              /* SIZEOF_INT is defined in <freetype/config/ftconfig.h> */
+              /* and gives the size in bytes of the `int' type on the  */
+              /* current platform.                                     */
+              /*                                                       */
+              /* Only on 16-bit systems the value of SIZEOF_INT can be */
+              /* less than 4.  In this case SIZEOF_LONG is always 4.   */
+              /*                                                       */
+              /* On a 64-bit system, SIZEOF_LONG can be 8, which is    */
+              /* handled by the default case.                          */
+              /*                                                       */
             Store_Number:
               switch ( field->size )
               {
-                case 1:  *(FT_Byte*)q  = (FT_Byte)val;  break;
-                case 2:  *(FT_Short*)q = (FT_Short)val; break;
+              case 1:
+                *(FT_Byte*)q = (FT_Byte)val;
+                break;
+
+              case 2:
+                *(FT_Short*)q = (FT_Short)val;
+                break;
+
 #if SIZEOF_INT == 4
-                case 4:  *(FT_Int*)q   = (FT_Int)val;   break;
+              case 4:
+                *(FT_Int*)q = (FT_Int)val;
+                break;
 #endif
-                default: *(FT_Long*)q  = val;
+
+              default:
+                *(FT_Long*)q = val;
               }
               break;
 
--- a/src/cid/cidafm.c
+++ b/src/cid/cidafm.c
@@ -40,7 +40,7 @@
 
   LOCAL_FUNC
   void  CID_Done_AFM( FT_Memory  memory,
-                      CID_AFM*    afm )
+                      CID_AFM*   afm )
   {
     FREE( afm->kern_pairs );
     afm->num_pairs = 0;
@@ -162,15 +162,15 @@
   FT_Error  CID_Read_AFM( FT_Face    cid_face,
                           FT_Stream  stream )
   {
-    FT_Error       error;
-    FT_Memory      memory = stream->memory;
-    FT_Byte*       start;
-    FT_Byte*       limit;
-    FT_Byte*       p;
-    FT_Int         count = 0;
-    CID_Kern_Pair* pair;
-    T1_Font*       type1 = &((T1_Face)t1_face)->type1;
-    CID_AFM*       afm   = 0;
+    FT_Error        error;
+    FT_Memory       memory = stream->memory;
+    FT_Byte*        start;
+    FT_Byte*        limit;
+    FT_Byte*        p;
+    FT_Int          count = 0;
+    CID_Kern_Pair*  pair;
+    T1_Font*        type1 = &((T1_Face)t1_face)->type1;
+    CID_AFM*        afm   = 0;
 
 
     if ( ACCESS_Frame( stream->size ) )
@@ -194,7 +194,7 @@
       goto Exit;
 
     /* allocate the pairs */
-    if ( ALLOC( afm, sizeof ( *afm ) )                       ||
+    if ( ALLOC( afm, sizeof ( *afm ) )                        ||
          ALLOC_ARRAY( afm->kern_pairs, count, CID_Kern_Pair ) )
       goto Exit;
 
@@ -245,7 +245,7 @@
 
   /* find the kerning for a given glyph pair */
   LOCAL_FUNC
-  void  CID_Get_Kerning( CID_AFM*     afm,
+  void  CID_Get_Kerning( CID_AFM*    afm,
                          FT_UInt     glyph1,
                          FT_UInt     glyph2,
                          FT_Vector*  kerning )
--- a/src/cid/cidgload.c
+++ b/src/cid/cidgload.c
@@ -143,8 +143,8 @@
   /*    glyph   :: The current glyph object.                               */
   /*                                                                       */
   LOCAL_FUNC
-  void  CID_Init_Builder( CID_Builder*  builder,
-                          CID_Face      face,
+  void  CID_Init_Builder( CID_Builder*   builder,
+                          CID_Face       face,
                           CID_Size       size,
                           CID_GlyphSlot  glyph )
   {
@@ -159,11 +159,11 @@
     {
       FT_GlyphLoader*  loader = glyph->root.loader;
 
-      
+
       builder->loader  = loader;
       builder->base    = &loader->base.outline;
       builder->current = &loader->current.outline;
-      
+
       FT_GlyphLoader_Rewind( loader );
     }
 
@@ -202,6 +202,7 @@
   {
     CID_GlyphSlot  glyph = builder->glyph;
 
+
     if ( glyph )
       glyph->root.outline = *builder->base;
   }
@@ -299,7 +300,7 @@
     {
       if ( outline->n_contours > 0 )
         outline->contours[outline->n_contours - 1] = outline->n_points - 1;
-  
+
       outline->n_contours++;
     }
     return error;
@@ -454,7 +455,7 @@
       error = FT_GlyphLoader_Check_Subglyphs( loader, 2 );
       if ( error )
         goto Exit;
-      
+
       subg = loader->current.subglyphs;
 
       /* subglyph 0 = base character */
@@ -474,13 +475,13 @@
       /* set up remaining glyph fields */
       glyph->num_subglyphs = 2;
       glyph->format        = ft_glyph_format_composite;
-      
+
       loader->current.num_subglyphs = 2;
     }
 
     /* First load `bchar' in builder */
     /* now load the unscaled outline */
-    if ( decoder->builder.loader )    
+    if ( decoder->builder.loader )
       FT_GlyphLoader_Prepare( decoder->builder.loader );
 
     error = cid_load_glyph( decoder, bchar_index );  /* load one glyph */
@@ -516,7 +517,7 @@
       {
         FT_Outline  dummy;
 
-        
+
         dummy.n_points = base->n_points - n_base_points;
         dummy.points   = base->points   + n_base_points;
         FT_Outline_Translate( &dummy, adx - asb, ady );
@@ -585,9 +586,9 @@
     /* now, execute loop */
     while ( ip < limit )
     {
-      FT_Int*      top   = decoder->top;
+      FT_Int*       top   = decoder->top;
       CID_Operator  op    = op_none;
-      FT_Long      value = 0;
+      FT_Long       value = 0;
 
 
       /********************************************************************/
@@ -1376,8 +1377,8 @@
   LOCAL_FUNC
   FT_Error  CID_Load_Glyph( CID_GlyphSlot  glyph,
                             CID_Size       size,
-                            FT_Int        glyph_index,
-                            FT_Int        load_flags )
+                            FT_Int         glyph_index,
+                            FT_Int         load_flags )
   {
     FT_Error     error;
     CID_Decoder  decoder;
--- a/src/cid/cidgload.h
+++ b/src/cid/cidgload.h
@@ -82,7 +82,7 @@
   {
     FT_Memory        memory;
     CID_Face         face;
-    CID_GlyphSlot     glyph;
+    CID_GlyphSlot    glyph;
     FT_GlyphLoader*  loader;
     FT_Outline*      base;
     FT_Outline*      current;
@@ -142,8 +142,8 @@
 
 
   LOCAL_DEF
-  void  CID_Init_Builder( CID_Builder*  builder,
-                          CID_Face      face,
+  void  CID_Init_Builder( CID_Builder*   builder,
+                          CID_Face       face,
                           CID_Size       size,
                           CID_GlyphSlot  glyph );
 
@@ -173,8 +173,8 @@
   LOCAL_DEF
   FT_Error  CID_Load_Glyph( CID_GlyphSlot  glyph,
                             CID_Size       size,
-                            FT_Int        glyph_index,
-                            FT_Int        load_flags );
+                            FT_Int         glyph_index,
+                            FT_Int         load_flags );
 
 
 #ifdef __cplusplus
--- a/src/cid/cidload.c
+++ b/src/cid/cidload.c
@@ -83,8 +83,8 @@
 
 
   static
-  FT_Error  cid_load_keyword( CID_Face             face,
-                              CID_Loader*          loader,
+  FT_Error  cid_load_keyword( CID_Face              face,
+                              CID_Loader*           loader,
                               const CID_Field_Rec*  keyword )
   {
     FT_Error    error;
--- a/src/cid/cidobjs.h
+++ b/src/cid/cidobjs.h
@@ -38,7 +38,7 @@
   /*************************************************************************/
   /*                                                                       */
   /* <Type>                                                                */
-  /*    CID_Driver                                                          */
+  /*    CID_Driver                                                         */
   /*                                                                       */
   /* <Description>                                                         */
   /*    A handle to a Type 1 driver object.                                */
@@ -49,7 +49,7 @@
   /*************************************************************************/
   /*                                                                       */
   /* <Type>                                                                */
-  /*    CID_Size                                                            */
+  /*    CID_Size                                                           */
   /*                                                                       */
   /* <Description>                                                         */
   /*    A handle to a Type 1 size object.                                  */
@@ -60,7 +60,7 @@
   /*************************************************************************/
   /*                                                                       */
   /* <Type>                                                                */
-  /*    CID_GlyphSlot                                                       */
+  /*    CID_GlyphSlot                                                      */
   /*                                                                       */
   /* <Description>                                                         */
   /*    A handle to a Type 1 glyph slot object.                            */
@@ -71,7 +71,7 @@
   /*************************************************************************/
   /*                                                                       */
   /* <Type>                                                                */
-  /*    CID_CharMap                                                         */
+  /*    CID_CharMap                                                        */
   /*                                                                       */
   /* <Description>                                                         */
   /*    A handle to a Type 1 character mapping object.                     */
@@ -81,7 +81,7 @@
   /*    The driver is responsible for making up charmap objects            */
   /*    corresponding to these tables.                                     */
   /*                                                                       */
-  typedef struct CID_CharMapRec_*   CID_CharMap;
+  typedef struct CID_CharMapRec_*  CID_CharMap;
 
 
   /*************************************************************************/
@@ -99,7 +99,7 @@
   } CID_SizeRec;
 
 
-  typedef struct  CID_GlyphSlotRec_
+  typedef struct CID_GlyphSlotRec_
   {
     FT_GlyphSlotRec  root;
 
--- a/src/cid/cidparse.c
+++ b/src/cid/cidparse.c
@@ -42,7 +42,7 @@
   /*************************************************************************/
   /*************************************************************************/
   /*****                                                               *****/
-  /*****           IMPLEMENTATION OF CID_TABLE OBJECT                   *****/
+  /*****           IMPLEMENTATION OF CID_TABLE OBJECT                  *****/
   /*****                                                               *****/
   /*************************************************************************/
   /*************************************************************************/
@@ -52,10 +52,10 @@
   /*************************************************************************/
   /*                                                                       */
   /* <Function>                                                            */
-  /*    CID_New_Table                                                       */
+  /*    CID_New_Table                                                      */
   /*                                                                       */
   /* <Description>                                                         */
-  /*    Initializes a CID_Table.                                            */
+  /*    Initializes a CID_Table.                                           */
   /*                                                                       */
   /* <InOut>                                                               */
   /*    table  :: The address of the target table.                         */
@@ -71,8 +71,8 @@
   /*                                                                       */
   LOCAL_FUNC
   FT_Error  CID_New_Table( CID_Table*  table,
-                          FT_Int     count,
-                          FT_Memory  memory )
+                           FT_Int      count,
+                           FT_Memory   memory )
   {
     FT_Error  error;
 
@@ -99,7 +99,7 @@
 
   static
   void  shift_elements( CID_Table*  table,
-                        FT_Byte*   old_base )
+                        FT_Byte*    old_base )
   {
     FT_Long    delta  = table->block - old_base;
     FT_Byte**  offset = table->elements;
@@ -117,7 +117,7 @@
 
   static
   FT_Error  reallocate_t1_table( CID_Table*  table,
-                                 FT_Int     new_size )
+                                 FT_Int      new_size )
   {
     FT_Memory  memory   = table->memory;
     FT_Byte*   old_base = table->block;
@@ -141,10 +141,10 @@
   /*************************************************************************/
   /*                                                                       */
   /* <Function>                                                            */
-  /*    CID_Add_Table                                                       */
+  /*    CID_Add_Table                                                      */
   /*                                                                       */
   /* <Description>                                                         */
-  /*    Adds an object to a CID_Table, possibly growing its memory block.   */
+  /*    Adds an object to a CID_Table, possibly growing its memory block.  */
   /*                                                                       */
   /* <InOut>                                                               */
   /*    table  :: The target table.                                        */
@@ -162,9 +162,9 @@
   /*                                                                       */
   LOCAL_FUNC
   FT_Error  CID_Add_Table( CID_Table*  table,
-                          FT_Int     index,
-                          void*      object,
-                          FT_Int     length )
+                           FT_Int      index,
+                           void*       object,
+                           FT_Int      length )
   {
     if ( index < 0 || index > table->max_elems )
     {
@@ -202,10 +202,10 @@
   /*************************************************************************/
   /*                                                                       */
   /* <Function>                                                            */
-  /*    CID_Done_Table                                                      */
+  /*    CID_Done_Table                                                     */
   /*                                                                       */
   /* <Description>                                                         */
-  /*    Finalizes a CID_Table (reallocate it to its current cursor).        */
+  /*    Finalizes a CID_Table (reallocate it to its current cursor).       */
   /*                                                                       */
   /* <InOut>                                                               */
   /*    table :: The target table.                                         */
@@ -292,7 +292,7 @@
 
 
   LOCAL_FUNC
-  void  CID_ToToken( CID_Parser*    parser,
+  void  CID_ToToken( CID_Parser*     parser,
                      CID_Token_Rec*  token )
   {
     FT_Byte*  cur;
@@ -376,10 +376,10 @@
 
 
   LOCAL_FUNC
-  void  CID_ToTokenArray( CID_Parser*    parser,
+  void  CID_ToTokenArray( CID_Parser*     parser,
                           CID_Token_Rec*  tokens,
-                          FT_UInt        max_tokens,
-                          FT_Int*        pnum_tokens )
+                          FT_UInt         max_tokens,
+                          FT_Int*         pnum_tokens )
   {
     CID_Token_Rec  master;
 
@@ -390,8 +390,8 @@
 
     if ( master.type == t1_token_array )
     {
-      FT_Byte*       old_cursor = parser->cursor;
-      FT_Byte*       old_limit  = parser->limit;
+      FT_Byte*        old_cursor = parser->cursor;
+      FT_Byte*        old_limit  = parser->limit;
       CID_Token_Rec*  cur        = tokens;
       CID_Token_Rec*  limit      = cur + max_tokens;
 
@@ -710,9 +710,9 @@
   /* Loads a simple field (i.e. non-table) into the current */
   /* list of objects                                        */
   LOCAL_FUNC
-  FT_Error  CID_Load_Field( CID_Parser*          parser,
+  FT_Error  CID_Load_Field( CID_Parser*           parser,
                             const CID_Field_Rec*  field,
-                            void*                object )
+                            void*                 object )
   {
     CID_Token_Rec  token;
     FT_Byte*      cur;
@@ -803,16 +803,16 @@
 
 
   LOCAL_FUNC
-  FT_Error  CID_Load_Field_Table( CID_Parser*          parser,
+  FT_Error  CID_Load_Field_Table( CID_Parser*           parser,
                                   const CID_Field_Rec*  field,
-                                  void*                object )
+                                  void*                 object )
   {
     CID_Token_Rec   elements[T1_MAX_TABLE_ELEMENTS];
     CID_Token_Rec*  token;
-    FT_Int         num_elements;
-    FT_Error       error = 0;
-    FT_Byte*       old_cursor;
-    FT_Byte*       old_limit;
+    FT_Int          num_elements;
+    FT_Error        error = 0;
+    FT_Byte*        old_cursor;
+    FT_Byte*        old_limit;
     CID_Field_Rec   fieldrec = *(CID_Field_Rec*)field;
 
 
--- a/src/cid/cidparse.h
+++ b/src/cid/cidparse.h
@@ -32,10 +32,10 @@
   /*************************************************************************/
   /*                                                                       */
   /* <Struct>                                                              */
-  /*    CID_Table                                                           */
+  /*    CID_Table                                                          */
   /*                                                                       */
   /* <Description>                                                         */
-  /*    A CID_Table is a simple object used to store an array of objects    */
+  /*    A CID_Table is a simple object used to store an array of objects   */
   /*    in a single memory block.                                          */
   /*                                                                       */
   /* <Fields>                                                              */
@@ -62,7 +62,7 @@
   /*    memory    :: The memory object used for memory operations          */
   /*                 (allocation resp. reallocation).                      */
   /*                                                                       */
-  typedef struct  CID_Table_
+  typedef struct CID_Table_
   {
     FT_Byte*   block;          /* current memory block           */
     FT_Int     cursor;         /* current cursor in memory block */
@@ -81,14 +81,14 @@
 
   LOCAL_DEF
   FT_Error  CID_New_Table( CID_Table*  table,
-                          FT_Int     count,
-                          CID_Memory  memory );
+                           FT_Int       count,
+                           CID_Memory   memory );
 
   LOCAL_DEF
   FT_Error  CID_Add_Table( CID_Table*  table,
-                          FT_Int     index,
-                          void*      object,
-                          FT_Int     length );
+                           FT_Int      index,
+                           void*       object,
+                           FT_Int      length );
 
   LOCAL_DEF
   void  CID_Release_Table( CID_Table*  table );
@@ -183,7 +183,7 @@
 
 
   /* simple enumeration type used to identify token types */
-  typedef enum  CID_Token_Type_
+  typedef enum CID_Token_Type_
   {
     t1_token_none = 0,
     t1_token_any,
@@ -199,9 +199,9 @@
   /* a simple structure used to identify tokens */
   typedef struct CID_Token_Rec_
   {
-    FT_Byte*       start;   /* first character of token in input stream */
-    FT_Byte*       limit;   /* first character after the token          */
-    CID_Token_Type  type;    /* type of token..                          */
+    FT_Byte*        start;   /* first character of token in input stream */
+    FT_Byte*        limit;   /* first character after the token          */
+    CID_Token_Type  type;    /* type of token                            */
 
   } CID_Token_Rec;
 
@@ -212,7 +212,7 @@
 
 
   /* enumeration type used to identify object fields */
-  typedef enum  CID_Field_Type_
+  typedef enum CID_Field_Type_
   {
     t1_field_none = 0,
     t1_field_bool,
@@ -228,7 +228,7 @@
 
   } CID_Field_Type;
 
-  typedef enum  CID_Field_Location_
+  typedef enum CID_Field_Location_
   {
     t1_field_cid_info,
     t1_field_font_dict,
@@ -245,17 +245,17 @@
                                          CID_Parser*  parser );
 
   /* structure type used to model object fields */
-  typedef struct  CID_Field_Rec_
+  typedef struct CID_Field_Rec_
   {
-    const char*        ident;         /* field identifier                  */
+    const char*         ident;        /* field identifier                  */
     CID_Field_Location  location;
-    CID_Field_Type      type;          /* type of field                     */
-    CID_Field_Parser   reader;
-    FT_UInt            offset;        /* offset of field in object         */
-    FT_UInt            size;          /* size of field in bytes            */
-    FT_UInt            array_max;     /* maximal number of elements for    */
+    CID_Field_Type      type;         /* type of field                     */
+    CID_Field_Parser    reader;
+    FT_UInt             offset;       /* offset of field in object         */
+    FT_UInt             size;         /* size of field in bytes            */
+    FT_UInt             array_max;    /* maximal number of elements for    */
                                       /* array                             */
-    FT_UInt            count_offset;  /* offset of element count for       */
+    FT_UInt             count_offset; /* offset of element count for       */
                                       /* arrays                            */
   } CID_Field_Rec;
 
@@ -263,83 +263,83 @@
 #define CID_FIELD_REF( s, f )  ( ((s*)0)->f )
 
 #define CID_NEW_SIMPLE_FIELD( _ident, _type, _fname )         \
-          {                                                  \
-            _ident, T1CODE, _type,                           \
-            0,                                               \
+          {                                                   \
+            _ident, T1CODE, _type,                            \
+            0,                                                \
             (FT_UInt)(char*)&CID_FIELD_REF( T1TYPE, _fname ), \
             sizeof ( CID_FIELD_REF( T1TYPE, _fname ) ),       \
-            0, 0                                             \
+            0, 0                                              \
           },
 
 #define CID_NEW_CALLBACK_FIELD( _ident, _reader ) \
-          {                                      \
-            _ident, T1CODE, t1_field_callback,   \
-            _reader,                             \
-            0, 0,                                \
-            0, 0                                 \
+          {                                       \
+            _ident, T1CODE, t1_field_callback,    \
+            _reader,                              \
+            0, 0,                                 \
+            0, 0                                  \
           },
 
 #define CID_NEW_TABLE_FIELD( _ident, _type, _fname, _max )           \
-          {                                                         \
-            _ident, T1CODE, _type,                                  \
-            0,                                                      \
+          {                                                          \
+            _ident, T1CODE, _type,                                   \
+            0,                                                       \
             (FT_UInt)(char*)&CID_FIELD_REF( T1TYPE, _fname ),        \
             sizeof ( CID_FIELD_REF( T1TYPE, _fname )[0] ),           \
-            _max,                                                   \
+            _max,                                                    \
             (FT_UInt)(char*)&CID_FIELD_REF( T1TYPE, num_ ## _fname ) \
           },
 
 #define CID_NEW_TABLE_FIELD2( _ident, _type, _fname, _max )   \
-          {                                                  \
-            _ident, T1CODE, _type,                           \
-            0,                                               \
+          {                                                   \
+            _ident, T1CODE, _type,                            \
+            0,                                                \
             (FT_UInt)(char*)&CID_FIELD_REF( T1TYPE, _fname ), \
             sizeof ( CID_FIELD_REF( T1TYPE, _fname )[0] ),    \
-            _max, 0                                          \
+            _max, 0                                           \
           },
 
 
-#define CID_FIELD_BOOL( _ident, _fname )                        \
+#define CID_FIELD_BOOL( _ident, _fname )                           \
           CID_NEW_SIMPLE_FIELD( _ident, t1_field_bool, _fname )
 
 #define CID_FIELD_NUM( _ident, _fname )                            \
           CID_NEW_SIMPLE_FIELD( _ident, t1_field_integer, _fname )
 
-#define CID_FIELD_FIXED( _ident, _fname )                        \
+#define CID_FIELD_FIXED( _ident, _fname )                          \
           CID_NEW_SIMPLE_FIELD( _ident, t1_field_fixed, _fname )
 
-#define CID_FIELD_STRING( _ident, _fname )                        \
+#define CID_FIELD_STRING( _ident, _fname )                         \
           CID_NEW_SIMPLE_FIELD( _ident, t1_field_string, _fname )
 
-#define CID_FIELD_NUM_TABLE( _ident, _fname, _fmax )           \
-          CID_NEW_TABLE_FIELD( _ident, t1_field_integer_array, \
+#define CID_FIELD_NUM_TABLE( _ident, _fname, _fmax )               \
+          CID_NEW_TABLE_FIELD( _ident, t1_field_integer_array,     \
                               _fname, _fmax )
 
-#define CID_FIELD_FIXED_TABLE( _ident, _fname, _fmax )       \
-          CID_NEW_TABLE_FIELD( _ident, t1_field_fixed_array, \
+#define CID_FIELD_FIXED_TABLE( _ident, _fname, _fmax )             \
+          CID_NEW_TABLE_FIELD( _ident, t1_field_fixed_array,       \
                               _fname, _fmax )
 
-#define CID_FIELD_NUM_TABLE2( _ident, _fname, _fmax )           \
-          CID_NEW_TABLE_FIELD2( _ident, t1_field_integer_array, \
+#define CID_FIELD_NUM_TABLE2( _ident, _fname, _fmax )              \
+          CID_NEW_TABLE_FIELD2( _ident, t1_field_integer_array,    \
                                _fname, _fmax )
 
-#define CID_FIELD_FIXED_TABLE2( _ident, _fname, _fmax )       \
-          CID_NEW_TABLE_FIELD2( _ident, t1_field_fixed_array, \
+#define CID_FIELD_FIXED_TABLE2( _ident, _fname, _fmax )            \
+          CID_NEW_TABLE_FIELD2( _ident, t1_field_fixed_array,      \
                                _fname, _fmax )
 
-#define CID_FIELD_CALLBACK( _ident, _name )                 \
+#define CID_FIELD_CALLBACK( _ident, _name )                        \
           CID_NEW_CALLBACK_FIELD( _ident, parse_ ## _name )
 
 
   LOCAL_DEF
-  FT_Error  CID_Load_Field( CID_Parser*          parser,
+  FT_Error  CID_Load_Field( CID_Parser*           parser,
                             const CID_Field_Rec*  field,
-                            void*                object );
+                            void*                 object );
 
   LOCAL_DEF
-  FT_Error  CID_Load_Field_Table( CID_Parser*          parser,
+  FT_Error  CID_Load_Field_Table( CID_Parser*           parser,
                                   const CID_Field_Rec*  field,
-                                  void*                object );
+                                  void*                 object );
 
 
 #ifdef __cplusplus
--- a/src/cid/cidriver.c
+++ b/src/cid/cidriver.c
@@ -181,9 +181,9 @@
       "t1cid",   /* module name           */
       0x10000L,  /* version 1.0 of driver */
       0x20000L,  /* requires FreeType 2.0 */
-      
+
       0,
-      
+
       (FT_Module_Constructor)CID_Init_Driver,
       (FT_Module_Destructor) CID_Done_Driver,
       (FT_Module_Requester)  CID_Get_Interface
--- a/src/macfond/fonddrvr.c
+++ b/src/macfond/fonddrvr.c
@@ -427,7 +427,7 @@
         return FT_Err_Out_Of_Memory;
       }
 
- #if 0
+#if 0
       {
         FILE* f;
         char * path;
--- a/src/sfnt/sfobjs.c
+++ b/src/sfnt/sfobjs.c
@@ -244,9 +244,10 @@
     FT_Error         error;
     SFNT_Interface*  sfnt = (SFNT_Interface*)face->sfnt;
 
-    UNUSED(face_index);
-    UNUSED(num_params);
-    UNUSED(params);
+    UNUSED( face_index );
+    UNUSED( num_params );
+    UNUSED( params );
+
 
     /* Load tables */
     if ( LOAD_( header )        ||
--- a/src/smooth/ftgrays.h
+++ b/src/smooth/ftgrays.h
@@ -42,8 +42,8 @@
 
   FT_EXPORT_VAR(FT_Raster_Funcs)  ft_grays_raster;
 
-  #ifdef __cplusplus
+#ifdef __cplusplus
   }
-  #endif
+#endif
 
 #endif
--- a/src/truetype/ttgload.c
+++ b/src/truetype/ttgload.c
@@ -920,6 +920,7 @@
             FT_Vector*  p1;
             FT_Vector*  p2;
 
+
             if ( start_point + k >= (FT_UInt)num_base_points ||
                                l >= (FT_UInt)num_new_points  )
             {
@@ -1023,8 +1024,8 @@
           pp1[0] = loader->pp1;
           pp1[1] = loader->pp2;
 
+          pts->tags[num_points    ] = 0;
           pts->tags[num_points + 1] = 0;
-          pts->tags[num_points + 2] = 0;
 
           /* if hinting, round the phantom points */
           if ( IS_HINTED( loader->load_flags ) )
--- a/src/type1z/z1parse.c
+++ b/src/type1z/z1parse.c
@@ -244,10 +244,10 @@
 /*************************************************************************/
 /*************************************************************************/
 
-  #define IS_Z1_WHITESPACE(c)  ( (c) == ' '  || (c) == '\t' )
-  #define IS_Z1_LINESPACE(c)   ( (c) == '\r' || (c) == '\n' )
+#define IS_Z1_WHITESPACE(c)  ( (c) == ' '  || (c) == '\t' )
+#define IS_Z1_LINESPACE(c)   ( (c) == '\r' || (c) == '\n' )
 
-  #define IS_Z1_SPACE(c)  ( IS_Z1_WHITESPACE(c) || IS_Z1_LINESPACE(c) )
+#define IS_Z1_SPACE(c)  ( IS_Z1_WHITESPACE(c) || IS_Z1_LINESPACE(c) )
 
   LOCAL_FUNC
   void     Z1_Skip_Spaces( Z1_Parser*  parser )