Disabling auto-refresh of game list by default, as it is causing bugs sometimes
[open-ps2-loader.git] / thirdparty / freetype-2.3.12 / src / base / ftgasp.c
blob8485d29259e85f27f64c00f9a5f34f51ed7d6d9e
1 /***************************************************************************/
2 /* */
3 /* ftgasp.c */
4 /* */
5 /* Access of TrueType's `gasp' table (body). */
6 /* */
7 /* Copyright 2007 by */
8 /* David Turner, Robert Wilhelm, and Werner Lemberg. */
9 /* */
10 /* This file is part of the FreeType project, and may only be used, */
11 /* modified, and distributed under the terms of the FreeType project */
12 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */
13 /* this file you indicate that you have read the license and */
14 /* understand and accept it fully. */
15 /* */
16 /***************************************************************************/
19 #include <ft2build.h>
20 #include FT_GASP_H
21 #include FT_INTERNAL_TRUETYPE_TYPES_H
24 FT_EXPORT_DEF( FT_Int )
25 FT_Get_Gasp( FT_Face face,
26 FT_UInt ppem )
28 FT_Int result = FT_GASP_NO_TABLE;
31 if ( face && FT_IS_SFNT( face ) )
33 TT_Face ttface = (TT_Face)face;
36 if ( ttface->gasp.numRanges > 0 )
38 TT_GaspRange range = ttface->gasp.gaspRanges;
39 TT_GaspRange range_end = range + ttface->gasp.numRanges;
42 while ( ppem > range->maxPPEM )
44 range++;
45 if ( range >= range_end )
46 goto Exit;
49 result = range->gaspFlag;
51 /* ensure that we don't have spurious bits */
52 if ( ttface->gasp.version == 0 )
53 result &= 3;
56 Exit:
57 return result;
61 /* END */