ref: da245ee30ad989c4281acb7fe3e948e929c203f7
parent: d6d73989b0d65aea079b4755bdebbd433b9f1f8b
author: Werner Lemberg <[email protected]>
date: Thu Aug 18 03:40:32 EDT 2005
Forgot to check in last change.
--- 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 )