diff options
author | Jungshik Shin <jungshik@google.com> | 2016-01-15 16:18:25 -0800 |
---|---|---|
committer | The Android Automerger <android-build@google.com> | 2016-02-24 13:20:13 -0800 |
commit | f720f0dbcf012d6c984dbbefa0875ef9840458c6 (patch) | |
tree | bdb1068e64623c623100071dc586117aba4a2417 /src/base/ftotval.c | |
parent | ec62c527eb34ee4481a0153ceb42dfd35d7e1d26 (diff) | |
download | android_external_freetype-f720f0dbcf012d6c984dbbefa0875ef9840458c6.tar.gz android_external_freetype-f720f0dbcf012d6c984dbbefa0875ef9840458c6.tar.bz2 android_external_freetype-f720f0dbcf012d6c984dbbefa0875ef9840458c6.zip |
[DO NOT MERGE] Update FreeType to 2.6.2 + update from 2.6.0
1. Update to a512b0fe7a (several patches past 2.6.2).
Major changes include
- stem-darkening is OFF for CFF fonts by default
- general code tightening
- header file location is back to include/freetype (used be include/)
2. A bit more details are added to README.android for the reference.
This CL requires a pdfium change (the way it includes FT header
files : https://googleplex-android-review.git.corp.google.com/#/c/846889
An AOSP master CL
(https://android-review.googlesource.com/#/c/196504/) is ported
to mnc-dev.
Bug: 24296662
Change-Id: Iec6784838d89098f332e6d1ed79663efd91a8441
Signed-off-by: Jungshik Shin <jungshik@google.com>
Diffstat (limited to 'src/base/ftotval.c')
-rw-r--r-- | src/base/ftotval.c | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/src/base/ftotval.c b/src/base/ftotval.c new file mode 100644 index 0000000..786457b --- /dev/null +++ b/src/base/ftotval.c @@ -0,0 +1,91 @@ +/***************************************************************************/ +/* */ +/* ftotval.c */ +/* */ +/* FreeType API for validating OpenType tables (body). */ +/* */ +/* Copyright 2004-2015 by */ +/* David Turner, Robert Wilhelm, and Werner Lemberg. */ +/* */ +/* This file is part of the FreeType project, and may only be used, */ +/* modified, and distributed under the terms of the FreeType project */ +/* license, LICENSE.TXT. By continuing to use, modify, or distribute */ +/* this file you indicate that you have read the license and */ +/* understand and accept it fully. */ +/* */ +/***************************************************************************/ + +#include <ft2build.h> +#include FT_INTERNAL_DEBUG_H + +#include FT_INTERNAL_OBJECTS_H +#include FT_SERVICE_OPENTYPE_VALIDATE_H +#include FT_OPENTYPE_VALIDATE_H + + + /* documentation is in ftotval.h */ + + FT_EXPORT_DEF( FT_Error ) + FT_OpenType_Validate( FT_Face face, + FT_UInt validation_flags, + FT_Bytes *BASE_table, + FT_Bytes *GDEF_table, + FT_Bytes *GPOS_table, + FT_Bytes *GSUB_table, + FT_Bytes *JSTF_table ) + { + FT_Service_OTvalidate service; + FT_Error error; + + + if ( !face ) + { + error = FT_THROW( Invalid_Face_Handle ); + goto Exit; + } + + if ( !( BASE_table && + GDEF_table && + GPOS_table && + GSUB_table && + JSTF_table ) ) + { + error = FT_THROW( Invalid_Argument ); + goto Exit; + } + + FT_FACE_FIND_GLOBAL_SERVICE( face, service, OPENTYPE_VALIDATE ); + + if ( service ) + error = service->validate( face, + validation_flags, + BASE_table, + GDEF_table, + GPOS_table, + GSUB_table, + JSTF_table ); + else + error = FT_THROW( Unimplemented_Feature ); + + Exit: + return error; + } + + + FT_EXPORT_DEF( void ) + FT_OpenType_Free( FT_Face face, + FT_Bytes table ) + { + FT_Memory memory; + + + if ( !face ) + return; + + memory = FT_FACE_MEMORY( face ); + + FT_FREE( table ); + } + + +/* END */ |