Browse Source

* src/svg/ftsvg.c (ft_svg_property_set): Disallow NULL pointers.

fix-sdf-squared-distances
Werner Lemberg 4 months ago
parent
commit
ef48a33271
  1. 2
      include/freetype/otsvg.h
  2. 20
      src/svg/ftsvg.c

2
include/freetype/otsvg.h

@ -223,6 +223,8 @@ FT_BEGIN_HEADER
* For example, in the preset hook one can draw the glyph on a recorder
* surface and later create a bitmap surface from it in the render hook.
*
* All four hooks must be non-NULL.
*
* @fields:
* init_svg ::
* The initialization hook.

20
src/svg/ftsvg.c

@ -168,16 +168,34 @@
if ( value_is_string == TRUE )
return FT_THROW( Invalid_Argument );
{
error = FT_THROW( Invalid_Argument );
goto Exit;
}
hooks = (SVG_RendererHooks*)value;
if ( !hooks->init_svg ||
!hooks->free_svg ||
!hooks->render_svg ||
!hooks->preset_slot )
{
FT_TRACE0(( "ft_svg_property_set:"
" SVG rendering hooks not set because\n" ));
FT_TRACE0(( " "
" at least one function pointer is NULL\n" ));
error = FT_THROW( Invalid_Argument );
goto Exit;
}
renderer->hooks = *hooks;
renderer->hooks_set = TRUE;
}
else
error = FT_THROW( Missing_Property );
Exit:
return error;
}

Loading…
Cancel
Save