shithub: freetype+ttf2subf

Download patch

ref: da245ee30ad989c4281acb7fe3e948e929c203f7
parent: d6d73989b0d65aea079b4755bdebbd433b9f1f8b
author: Werner Lemberg <[email protected]>
date: Thu Aug 18 03:40:32 EDT 2005

Forgot to check in last change.

git/fs: mount .git/fs: mount/attach disallowed
--- a/src/base/ftgloadr.c
+++ b/src/base/ftgloadr.c
@@ -4,7 +4,7 @@
 /*                                                                         */
 /*    The FreeType glyph loader (body).                                    */
 /*                                                                         */
-/*  Copyright 2002, 2003, 2004 by                                          */
+/*  Copyright 2002, 2003, 2004, 2005 by                                    */
 /*  David Turner, Robert Wilhelm, and Werner Lemberg                       */
 /*                                                                         */
 /*  This file is part of the FreeType project, and may only be used,       */
@@ -296,13 +296,22 @@
   FT_BASE_DEF( void )
   FT_GlyphLoader_Add( FT_GlyphLoader  loader )
   {
-    FT_GlyphLoad  base    = &loader->base;
-    FT_GlyphLoad  current = &loader->current;
+    FT_GlyphLoad  base;
+    FT_GlyphLoad  current;
 
-    FT_UInt       n_curr_contours = current->outline.n_contours;
-    FT_UInt       n_base_points   = base->outline.n_points;
+    FT_UInt       n_curr_contours;
+    FT_UInt       n_base_points;
     FT_UInt       n;
 
+
+    if ( !loader )
+      return;
+
+    base    = &loader->base;
+    current = &loader->current;
+
+    n_curr_contours = current->outline.n_contours;
+    n_base_points   = base->outline.n_points;
 
     base->outline.n_points =
       (short)( base->outline.n_points + current->outline.n_points );
--- a/src/cff/cffgload.c
+++ b/src/cff/cffgload.c
@@ -508,6 +508,9 @@
     FT_Outline*  outline = builder->current;
 
 
+    if ( !outline )
+      return;
+
     /* XXXX: We must not include the last point in the path if it */
     /*       is located on the first point.                       */
     if ( outline->n_points > 1 )
--- a/src/psaux/psobjs.c
+++ b/src/psaux/psobjs.c
@@ -1735,6 +1735,9 @@
     FT_Outline*  outline = builder->current;
 
 
+    if ( !outline )
+      return;
+
     /* XXXX: We must not include the last point in the path if it */
     /*       is located on the first point.                       */
     if ( outline->n_points > 1 )