Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(548)

Side by Side Diff: core/src/fxge/fx_freetype/fxft2.5.01/src/base/ftgxval.c

Issue 815103002: Update freetype to 2.5.4. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Adjust GYP and GN Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /***************************************************************************/
2 /* */
3 /* ftgxval.c */
4 /* */
5 /* FreeType API for validating TrueTyepGX/AAT tables (body). */
6 /* */
7 /* Copyright 2004-2006, 2010, 2013 by */
8 /* Masatake YAMATO, Redhat K.K, */
9 /* David Turner, Robert Wilhelm, and Werner Lemberg. */
10 /* */
11 /* This file is part of the FreeType project, and may only be used, */
12 /* modified, and distributed under the terms of the FreeType project */
13 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
14 /* this file you indicate that you have read the license and */
15 /* understand and accept it fully. */
16 /* */
17 /***************************************************************************/
18
19 /***************************************************************************/
20 /* */
21 /* gxvalid is derived from both gxlayout module and otvalid module. */
22 /* Development of gxlayout is supported by the Information-technology */
23 /* Promotion Agency(IPA), Japan. */
24 /* */
25 /***************************************************************************/
26
27
28 #include "../../include/ft2build.h"
29 #include "../../include/freetype/internal/ftdebug.h"
30
31 #include "../../include/freetype/internal/ftobjs.h"
32 #include "../../include/freetype/internal/services/svgxval.h"
33
34
35 /* documentation is in ftgxval.h */
36
37 FT_EXPORT_DEF( FT_Error )
38 FT_TrueTypeGX_Validate( FT_Face face,
39 FT_UInt validation_flags,
40 FT_Bytes tables[FT_VALIDATE_GX_LENGTH],
41 FT_UInt table_length )
42 {
43 FT_Service_GXvalidate service;
44 FT_Error error;
45
46
47 if ( !face )
48 {
49 error = FT_THROW( Invalid_Face_Handle );
50 goto Exit;
51 }
52
53 if ( tables == NULL )
54 {
55 error = FT_THROW( Invalid_Argument );
56 goto Exit;
57 }
58
59 FT_FACE_FIND_GLOBAL_SERVICE( face, service, GX_VALIDATE );
60
61 if ( service )
62 error = service->validate( face,
63 validation_flags,
64 tables,
65 table_length );
66 else
67 error = FT_THROW( Unimplemented_Feature );
68
69 Exit:
70 return error;
71 }
72
73
74 FT_EXPORT_DEF( void )
75 FT_TrueTypeGX_Free( FT_Face face,
76 FT_Bytes table )
77 {
78 FT_Memory memory;
79
80
81 if ( !face )
82 return;
83
84 memory = FT_FACE_MEMORY( face );
85
86 FT_FREE( table );
87 }
88
89
90 FT_EXPORT_DEF( FT_Error )
91 FT_ClassicKern_Validate( FT_Face face,
92 FT_UInt validation_flags,
93 FT_Bytes *ckern_table )
94 {
95 FT_Service_CKERNvalidate service;
96 FT_Error error;
97
98
99 if ( !face )
100 {
101 error = FT_THROW( Invalid_Face_Handle );
102 goto Exit;
103 }
104
105 if ( ckern_table == NULL )
106 {
107 error = FT_THROW( Invalid_Argument );
108 goto Exit;
109 }
110
111 FT_FACE_FIND_GLOBAL_SERVICE( face, service, CLASSICKERN_VALIDATE );
112
113 if ( service )
114 error = service->validate( face,
115 validation_flags,
116 ckern_table );
117 else
118 error = FT_THROW( Unimplemented_Feature );
119
120 Exit:
121 return error;
122 }
123
124
125 FT_EXPORT_DEF( void )
126 FT_ClassicKern_Free( FT_Face face,
127 FT_Bytes table )
128 {
129 FT_Memory memory;
130
131
132 if ( !face )
133 return;
134
135 memory = FT_FACE_MEMORY( face );
136
137
138 FT_FREE( table );
139 }
140
141
142 /* END */
OLDNEW
« no previous file with comments | « core/src/fxge/fx_freetype/fxft2.5.01/src/base/ftgloadr.c ('k') | core/src/fxge/fx_freetype/fxft2.5.01/src/base/ftmac.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698