From 398801e2c0dace6c1ea80f92dfd84a8e0178f932 Mon Sep 17 00:00:00 2001 From: Moazin Khatti Date: Tue, 30 Jul 2019 11:56:10 +0500 Subject: [PATCH] Revert "Performs basic checks to see if SVG data is valid or not." This reverts commit e5dc1b65cdc7ea357118fddbdb4b00afc403f81c. These aren't necessary. --- src/sfnt/ttsvg.c | 38 ++------------------------------------ 1 file changed, 2 insertions(+), 36 deletions(-) diff --git a/src/sfnt/ttsvg.c b/src/sfnt/ttsvg.c index 223eb8802..f4a85ca96 100644 --- a/src/sfnt/ttsvg.c +++ b/src/sfnt/ttsvg.c @@ -35,24 +35,6 @@ #include "ttsvg.h" -/* SVG table looks like: - * -------------------------------------- - * Bytes: Field | - * -------------------------------------- - * 2 version - * 4 offsetToSVGDocumentList - * 4 reserved - * 2 numEntries (non-zero) - * 12*numEntries documentList - * - * Since numEntries must be at least one, minimum - * size of SVG table is 24. Everything apart from - * the documentList makes 12 bytes. - */ - -#define SVG_HEADER_BASE_SIZE 12 -#define SVG_HEADER_MIN_SIZE 24 - /* TODO: (OT-SVG) Decide whether to add documentation here or not */ typedef struct Svg_ @@ -87,9 +69,6 @@ if( error ) goto NoSVG; - if ( table_size < SVG_HEADER_MIN_SIZE ) - goto InvalidTable; - if( FT_FRAME_EXTRACT( table_size, table )) goto NoSVG; @@ -98,14 +77,7 @@ goto NoSVG; p = table; - svg->version = FT_NEXT_USHORT( p ); - - /* At the time of writing this, only version 0 exists, - * and only that is supported by FreeType - */ - if ( svg->version != 0 ) - goto InvalidTable; - + svg->version = FT_NEXT_USHORT( p ); offsetToSVGDocumentList = FT_NEXT_ULONG( p ); if( offsetToSVGDocumentList == 0 ) @@ -116,9 +88,6 @@ p = svg->svg_doc_list; svg->num_entries = FT_NEXT_USHORT( p ); - if ( ( svg->num_entries*12 + SVG_HEADER_BASE_SIZE ) > table_size ) - goto InvalidTable; - FT_TRACE3(( "version: %d\n", svg->version )); FT_TRACE3(( "num entiries: %d\n", svg->num_entries )); @@ -275,10 +244,7 @@ *doc_length = mid_doc.length; *start_glyph = mid_doc.start_glyph_id; *end_glyph = mid_doc.end_glyph_id; - if ( *doc_length == 0 ) - error = FT_THROW( Invalid_SVG_Document ); - else - error = FT_Err_Ok; + error = FT_Err_Ok; } return error; }