diff options
author | Behdad Esfahbod <behdad@google.com> | 2014-08-08 17:55:11 -0400 |
---|---|---|
committer | Behdad Esfahbod <behdad@google.com> | 2014-08-08 17:59:36 -0400 |
commit | 9c745321260bb728ab1cd1c8fd5f075854b2ad49 (patch) | |
tree | 86c9ee0214cac2870a94905e4240732413ed768b /src/base/ftobjs.c | |
parent | ec0bab5697bb31ba980810145f62e3799946ec60 (diff) | |
download | android_external_freetype-9c745321260bb728ab1cd1c8fd5f075854b2ad49.tar.gz android_external_freetype-9c745321260bb728ab1cd1c8fd5f075854b2ad49.tar.bz2 android_external_freetype-9c745321260bb728ab1cd1c8fd5f075854b2ad49.zip |
Update freetype to e1394d56752cac3bd68ab2358a8e1384ce7b9aaastaging/cm-12.0-cafstaging/cm-12.0
Integrated patches from freetype2 git repository, up to hashval
e1394d56752cac3bd68ab2358a8e1384ce7b9aaa, which is post-2.5.3.
Most recent commit message from freetype git:
Minor documentation improvement.
Noteworthy patches included:
Fix Savannah bug #41697, part 2.
Fix Savannah bug #41697, part 1.
Bug: 16575323
Change-Id: I4f8f9375afd2540618b3ebf6152d77b743975dce
Diffstat (limited to 'src/base/ftobjs.c')
-rw-r--r-- | src/base/ftobjs.c | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/src/base/ftobjs.c b/src/base/ftobjs.c index bd0c66e..cc56105 100644 --- a/src/base/ftobjs.c +++ b/src/base/ftobjs.c @@ -4,7 +4,7 @@ /* */ /* The FreeType private base classes (body). */ /* */ -/* Copyright 1996-2013 by */ +/* Copyright 1996-2014 by */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* */ /* This file is part of the FreeType project, and may only be used, */ @@ -1801,9 +1801,10 @@ if ( error ) return error; + /* POST resources must be sorted to concatenate properly */ error = FT_Raccess_Get_DataOffsets( library, stream, map_offset, rdara_pos, - TTAG_POST, + TTAG_POST, TRUE, &data_offsets, &count ); if ( !error ) { @@ -1816,9 +1817,11 @@ return error; } + /* sfnt resources should not be sorted to preserve the face order by + QuickDraw API */ error = FT_Raccess_Get_DataOffsets( library, stream, map_offset, rdara_pos, - TTAG_sfnt, + TTAG_sfnt, FALSE, &data_offsets, &count ); if ( !error ) { @@ -3357,6 +3360,7 @@ FT_UInt gindex = 0; + /* only do something if we have a charmap, and we have glyphs at all */ if ( face && face->charmap && face->num_glyphs ) { gindex = FT_Get_Char_Index( face, 0 ); @@ -3943,11 +3947,17 @@ static void ft_remove_renderer( FT_Module module ) { - FT_Library library = module->library; - FT_Memory memory = library->memory; + FT_Library library; + FT_Memory memory; FT_ListNode node; + library = module->library; + if ( !library ) + return; + + memory = library->memory; + node = FT_List_Find( &library->renderers, module ); if ( node ) { @@ -4463,7 +4473,7 @@ } - FT_Error + static FT_Error ft_property_do( FT_Library library, const FT_String* module_name, const FT_String* property_name, @@ -4871,6 +4881,8 @@ *p_arg1 = subg->arg1; *p_arg2 = subg->arg2; *p_transform = subg->transform; + + error = FT_Err_Ok; } return error; |