diff options
Diffstat (limited to 'src/sfnt/sfobjs.c')
-rw-r--r-- | src/sfnt/sfobjs.c | 40 |
1 files changed, 21 insertions, 19 deletions
diff --git a/src/sfnt/sfobjs.c b/src/sfnt/sfobjs.c index 44aa467..40c27fa 100644 --- a/src/sfnt/sfobjs.c +++ b/src/sfnt/sfobjs.c @@ -4,7 +4,7 @@ /* */ /* SFNT object management (base). */ /* */ -/* Copyright 1996-2008, 2010-2014 by */ +/* Copyright 1996-2015 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ @@ -376,8 +376,8 @@ FT_FREE( stream->base ); stream->size = 0; - stream->base = 0; - stream->close = 0; + stream->base = NULL; + stream->close = NULL; } @@ -567,8 +567,10 @@ if ( table->Offset != woff_offset || - table->Offset + table->CompLength > woff.length || - sfnt_offset + table->OrigLength > woff.totalSfntSize || + table->CompLength > woff.length || + table->Offset > woff.length - table->CompLength || + table->OrigLength > woff.totalSfntSize || + sfnt_offset > woff.totalSfntSize - table->OrigLength || table->CompLength > table->OrigLength ) { error = FT_THROW( Invalid_Table ); @@ -578,8 +580,8 @@ table->OrigOffset = sfnt_offset; /* The offsets must be multiples of 4. */ - woff_offset += ( table->CompLength + 3 ) & ~3; - sfnt_offset += ( table->OrigLength + 3 ) & ~3; + woff_offset += ( table->CompLength + 3 ) & ~3U; + sfnt_offset += ( table->OrigLength + 3 ) & ~3U; } /* @@ -607,7 +609,7 @@ if ( woff.privOffset ) { /* ... if it isn't the last block. */ - woff_offset = ( woff_offset + 3 ) & ~3; + woff_offset = ( woff_offset + 3 ) & ~3U; if ( woff.privOffset != woff_offset || woff.privOffset + woff.privLength > woff.length ) @@ -1016,7 +1018,6 @@ if ( is_apple_sbix ) has_outline = FALSE; - /* if this font doesn't contain outlines, we try to load */ /* a `bhed' table */ if ( !has_outline && sfnt->load_bhed ) @@ -1430,8 +1431,8 @@ root->ascender = face->horizontal.Ascender; root->descender = face->horizontal.Descender; - root->height = (FT_Short)( root->ascender - root->descender + - face->horizontal.Line_Gap ); + root->height = root->ascender - root->descender + + face->horizontal.Line_Gap; if ( !( root->ascender || root->descender ) ) { @@ -1442,23 +1443,24 @@ root->ascender = face->os2.sTypoAscender; root->descender = face->os2.sTypoDescender; - root->height = (FT_Short)( root->ascender - root->descender + - face->os2.sTypoLineGap ); + root->height = root->ascender - root->descender + + face->os2.sTypoLineGap; } else { root->ascender = (FT_Short)face->os2.usWinAscent; root->descender = -(FT_Short)face->os2.usWinDescent; - root->height = (FT_UShort)( root->ascender - root->descender ); + root->height = root->ascender - root->descender; } } } - root->max_advance_width = face->horizontal.advance_Width_Max; - root->max_advance_height = (FT_Short)( face->vertical_info - ? face->vertical.advance_Height_Max - : root->height ); + root->max_advance_width = + (FT_Short)face->horizontal.advance_Width_Max; + root->max_advance_height = + (FT_Short)( face->vertical_info ? face->vertical.advance_Height_Max + : root->height ); /* See http://www.microsoft.com/OpenType/OTSpec/post.htm -- */ /* Adjust underline position from top edge to centre of */ @@ -1568,7 +1570,7 @@ FT_FREE( face->postscript_name ); - face->sfnt = 0; + face->sfnt = NULL; } |