4 |
/* */ |
/* */ |
5 |
/* The FreeType glyph loader (specification). */ |
/* The FreeType glyph loader (specification). */ |
6 |
/* */ |
/* */ |
7 |
/* Copyright 2002, 2003 by */ |
/* Copyright 2002, 2003, 2005 by */ |
8 |
/* David Turner, Robert Wilhelm, and Werner Lemberg */ |
/* David Turner, Robert Wilhelm, and Werner Lemberg */ |
9 |
/* */ |
/* */ |
10 |
/* This file is part of the FreeType project, and may only be used, */ |
/* This file is part of the FreeType project, and may only be used, */ |
117 |
FT_UInt n_points, |
FT_UInt n_points, |
118 |
FT_UInt n_contours ); |
FT_UInt n_contours ); |
119 |
|
|
120 |
#define FT_GLYPHLOADER_CHECK_P(_loader,_count) \ |
|
121 |
( (_count) == 0 || (int)((_loader)->base.outline.n_points + \ |
#define FT_GLYPHLOADER_CHECK_P( _loader, _count ) \ |
122 |
(_loader)->current.outline.n_points + \ |
( (_count) == 0 || (int)((_loader)->base.outline.n_points + \ |
123 |
|
(_loader)->current.outline.n_points + \ |
124 |
(_count)) <= (int)(_loader)->max_points ) |
(_count)) <= (int)(_loader)->max_points ) |
125 |
|
|
126 |
#define FT_GLYPHLOADER_CHECK_C(_loader,_count) \ |
#define FT_GLYPHLOADER_CHECK_C( _loader, _count ) \ |
127 |
( (_count) == 0 || (int)((_loader)->base.outline.n_contours + \ |
( (_count) == 0 || (int)((_loader)->base.outline.n_contours + \ |
128 |
(_loader)->current.outline.n_contours + \ |
(_loader)->current.outline.n_contours + \ |
129 |
(_count)) <= (int)(_loader)->max_contours ) |
(_count)) <= (int)(_loader)->max_contours ) |
130 |
|
|
131 |
#define FT_GLYPHLOADER_CHECK_POINTS(_loader,_points,_contours) \ |
#define FT_GLYPHLOADER_CHECK_POINTS( _loader, _points,_contours ) \ |
132 |
( ( FT_GLYPHLOADER_CHECK_P(_loader,_points) && \ |
( ( FT_GLYPHLOADER_CHECK_P( _loader, _points ) && \ |
133 |
FT_GLYPHLOADER_CHECK_C(_loader,_contours) ) \ |
FT_GLYPHLOADER_CHECK_C( _loader, _contours ) ) \ |
134 |
? 0 \ |
? 0 \ |
135 |
: FT_GlyphLoader_CheckPoints( (_loader), (_points), (_contours) ) ) |
: FT_GlyphLoader_CheckPoints( (_loader), (_points), (_contours) ) ) |
136 |
|
|
137 |
|
|
138 |
/* check that there is enough space to add `n_subs' sub-glyphs to */ |
/* check that there is enough space to add `n_subs' sub-glyphs to */ |
139 |
/* a glyph loader */ |
/* a glyph loader */ |
140 |
FT_BASE( FT_Error ) |
FT_BASE( FT_Error ) |