diff options
Diffstat (limited to 'src/sfnt/sfwoff2.c')
-rw-r--r-- | src/sfnt/sfwoff2.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/sfnt/sfwoff2.c b/src/sfnt/sfwoff2.c index bea73c388..bb7c9815b 100644 --- a/src/sfnt/sfwoff2.c +++ b/src/sfnt/sfwoff2.c @@ -1706,6 +1706,7 @@ FT_FREE( table_entry ); FT_Stream_Close( stream ); FT_FREE( stream ); + FT_FREE( transformed_buf ); return error; } @@ -2170,11 +2171,12 @@ woff2.uncompressed_size, stream->cursor, woff2.totalCompressedSize ); - if ( error ) - goto Exit; FT_FRAME_EXIT(); + if ( error ) + goto Exit; + error = reconstruct_font( uncompressed_buf, woff2.uncompressed_size, indices, @@ -2183,6 +2185,9 @@ &sfnt, &sfnt_size, memory ); + + uncompressed_buf = NULL; + if ( error ) goto Exit; @@ -2221,6 +2226,7 @@ Exit: FT_FREE( tables ); FT_FREE( indices ); + FT_FREE( uncompressed_buf ); if ( error ) { |