From: Owen Taylor Date: Thu, 27 May 2004 21:03:42 +0000 (+0000) Subject: Free buffer->positions, clean up error returns that were returning X-Git-Tag: submit/master/20120920.151126~7^2~1387 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=ef07481025c5bbb9769b9f908d9dc78f44161bbb;p=framework%2Fuifw%2Fharfbuzz.git Free buffer->positions, clean up error returns that were returning Thu May 27 16:57:30 2004 Owen Taylor * pango/opentype/otlbuffer.c: Free buffer->positions, clean up error returns that were returning uninitialized values. (#139239, Behdad Esfahbod) --- diff --git a/src/otlbuffer.c b/src/otlbuffer.c index b35a63f..e9fd03b 100644 --- a/src/otlbuffer.c +++ b/src/otlbuffer.c @@ -28,12 +28,15 @@ while (size > new_allocated) new_allocated += (new_allocated >> 1) + 8; - - if ( FT_REALLOC_ARRAY( buffer->in_string, buffer->allocated, new_allocated, OTL_GlyphItemRec ) ) + + error = FT_REALLOC_ARRAY( buffer->in_string, buffer->allocated, new_allocated, OTL_GlyphItemRec ); + if ( error ) return error; - if ( FT_REALLOC_ARRAY( buffer->out_string, buffer->allocated, new_allocated, OTL_GlyphItemRec ) ) + error = FT_REALLOC_ARRAY( buffer->out_string, buffer->allocated, new_allocated, OTL_GlyphItemRec ); + if ( error ) return error; - if ( FT_REALLOC_ARRAY( buffer->positions, buffer->allocated, new_allocated, OTL_PositionRec ) ) + error = FT_REALLOC_ARRAY( buffer->positions, buffer->allocated, new_allocated, OTL_PositionRec ); + if ( error ) return error; buffer->allocated = new_allocated; @@ -47,8 +50,9 @@ OTL_Buffer *buffer ) { FT_Error error; - - if ( FT_ALLOC( *buffer, sizeof( OTL_BufferRec ) ) ) + + error = FT_ALLOC( *buffer, sizeof( OTL_BufferRec ) ); + if ( error ) return error; (*buffer)->memory = memory; @@ -91,6 +95,7 @@ FT_FREE( buffer->in_string ); FT_FREE( buffer->out_string ); + FT_FREE( buffer->positions ); FT_FREE( buffer ); return FT_Err_Ok; @@ -117,7 +122,7 @@ OTL_GlyphItem glyph; error = otl_buffer_ensure( buffer, buffer->in_length + 1 ); - if ( error != FT_Err_Ok ) + if ( error ) return error; glyph = &buffer->in_string[buffer->in_length]; @@ -165,7 +170,7 @@ FT_UInt cluster; error = otl_buffer_ensure( buffer, buffer->out_pos + num_out ); - if ( error != FT_Err_Ok ) + if ( error ) return error; properties = buffer->in_string[buffer->in_pos].properties;