| Index: core/src/fxge/fx_freetype/fxft2.5.01/src/cff/cf2ft.c
|
| diff --git a/core/src/fxge/fx_freetype/fxft2.5.01/src/cff/cf2ft.c b/core/src/fxge/fx_freetype/fxft2.5.01/src/cff/cf2ft.c
|
| index 4311d107567167fd56e157a2d3df99e7cbfe9231..7f82b247af28094df42b5c26d714d6cfedbfe2f2 100644
|
| --- a/core/src/fxge/fx_freetype/fxft2.5.01/src/cff/cf2ft.c
|
| +++ b/core/src/fxge/fx_freetype/fxft2.5.01/src/cff/cf2ft.c
|
| @@ -143,6 +143,7 @@
|
| /* downcast the object pointer */
|
| CF2_Outline outline = (CF2_Outline)callbacks;
|
| CFF_Builder* builder;
|
| + FT_Error error;
|
|
|
|
|
| FT_ASSERT( outline && outline->decoder );
|
| @@ -154,15 +155,18 @@
|
| {
|
| /* record the move before the line; also check points and set */
|
| /* `path_begun' */
|
| - cff_builder_start_point( builder,
|
| + error = cff_builder_start_point(builder,
|
| params->pt0.x,
|
| params->pt0.y );
|
| + if (callbacks && callbacks->error) *callbacks->error = error;
|
| + if (error) return;
|
| }
|
|
|
| /* `cff_builder_add_point1' includes a check_points call for one point */
|
| - cff_builder_add_point1( builder,
|
| + error = cff_builder_add_point1(builder,
|
| params->pt1.x,
|
| params->pt1.y );
|
| + if (callbacks && callbacks->error) *callbacks->error = error;
|
| }
|
|
|
|
|
| @@ -173,6 +177,7 @@
|
| /* downcast the object pointer */
|
| CF2_Outline outline = (CF2_Outline)callbacks;
|
| CFF_Builder* builder;
|
| + FT_Error error;
|
|
|
|
|
| FT_ASSERT( outline && outline->decoder );
|
| @@ -184,13 +189,17 @@
|
| {
|
| /* record the move before the line; also check points and set */
|
| /* `path_begun' */
|
| - cff_builder_start_point( builder,
|
| + error = cff_builder_start_point( builder,
|
| params->pt0.x,
|
| params->pt0.y );
|
| + if (callbacks && callbacks->error) *callbacks->error = error;
|
| + if (error) return;
|
| }
|
|
|
| /* prepare room for 3 points: 2 off-curve, 1 on-curve */
|
| - cff_check_points( builder, 3 );
|
| + error = cff_check_points( builder, 3 );
|
| + if (callbacks && callbacks->error) *callbacks->error = error;
|
| + if (error) return;
|
|
|
| cff_builder_add_point( builder,
|
| params->pt1.x,
|
|
|