From 705320b72d67d7a03d992391b0fa90b4b4a08498 Mon Sep 17 00:00:00 2001 From: Moazin Khatti Date: Fri, 9 Aug 2019 13:42:07 +0500 Subject: [PATCH] Check if the size has been properly set. For TTF outlines this is already handled, however, for traditional CFF outlines the check happens too late. We need to check early. --- src/cff/cffgload.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/cff/cffgload.c b/src/cff/cffgload.c index 1c1fb9353..33733896a 100644 --- a/src/cff/cffgload.c +++ b/src/cff/cffgload.c @@ -358,6 +358,13 @@ FT_UShort advanceX; FT_UShort advanceY; + if ( ( size->root.metrics.x_ppem < 1 || + size->root.metrics.y_ppem < 1 ) ) + { + error = FT_THROW( Invalid_Size_Handle ); + return error; + } + FT_TRACE3(( "Attemping to load SVG glyph\n" )); sfnt = (SFNT_Service)((TT_Face)glyph->root.face)->sfnt; error = sfnt->load_svg_doc( (FT_GlyphSlot)glyph, glyph_index );