* src/otvalid/otvcommn.h: Remove dead code.

Formatting.
This commit is contained in:
Werner Lemberg 2005-08-03 21:17:53 +00:00
parent 89fff9b9d1
commit 8e3fc5ea0c
8 changed files with 86 additions and 129 deletions

View File

@ -1,9 +1,16 @@
2005-08-02 Werner Lemberg <wl@gnu.org>
* src/otvalid/otvcommn.h: Remove dead code.
2005-07-31 Chia I Wu <b90201047@ntu.edu.tw>
* src/truetype/ttobjs.h (tt_size_run_fpgm, tt_size_run_prep): New functions.
* src/truetype/ttobjs.h (tt_size_run_fpgm, tt_size_run_prep): New
functions.
* src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): New functions.
(tt_size_init): Add 4, instead of 2, (phantom) points to twilight zone.
* src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): New
functions.
(tt_size_init): Add 4, instead of 2, (phantom) points to twilight
zone.
Move code that runs fpgm to tt_size_run_fpgm.
(Reset_Outline_Size): Move code that runs prep to tt_size_run_prep.
(tt_glyphzone_new): Allocate right size of arrays.
@ -29,14 +36,27 @@
2005-06-30 David Turner <david@freetype.org>
* src/sfnt/ftbitmap.c, src/truetype/ttgload.c, src/sfnt/ttcmap.c:
removing compiler warnings (Visual C++ /W4)
* src/sfnt/ftbitmap.c, src/truetype/ttgload.c, src/sfnt/ttcmap.c:
Removing compiler warnings (Visual C++ /W4).
* Jamfile, src/otvalid/{otvcommn.h,otvgdef.c,otvgpos.c,otvgsub.c,
otvjstf.c}: modified the code to use a different pre-processor trick
to implement the OTV_NEST1, OTV_NEST2 and OTV_NEST3 macros. The code
now compiles neatly with Visual C++. The 'otvalid' module has been
put in the Jamfile build again.
Implement a work-around for broken C preprocessor in Visual C++ (it
has been confirmed by the MS developers that it is indeed a bug
which won't be fixed in the very near future).
* Jamfile (FT2_COMPONENTS): Include otvalid (again).
* src/otvalid/otvcommn.h (OTV_NAME, OTV_FUNC): New macros.
(OTV_NEST1, OTV_NEST2, OTV_NEST3): Use OTV_NAME and OTV_FUNC to
avoid argument expansion by argument prescan.
Append `Func' to all affected macros and change them to take just a
single argument. Example: `AttachList' is renamed to
`AttachListFunc'.
* src/otvalid/otvgdef.c, src/otvalid/otvgpos.c,
src/otvalid/otvgsub.c, src/otvjstf.c: Append `Func' to macros
affected by the changes to OTV_NESTx and modify them to take just a
single argument.
2005-06-20 Chia I Wu <b90201047@ntu.edu.tw>

View File

@ -117,34 +117,31 @@ FT_BEGIN_HEADER
#ifdef FT_DEBUG_LEVEL_TRACE
/* use preprocessor's argument prescan to expand one argument into two */
#define OTV_NEST1( x ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC(x); \
valid->debug_function_name[0] = OTV_NAME(x); \
valid->func[0] = OTV_FUNC( x ); \
valid->debug_function_name[0] = OTV_NAME( x ); \
FT_END_STMNT
/* use preprocessor's argument prescan to expand two arguments into four */
#define OTV_NEST2( x, y ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC(x); \
valid->func[1] = OTV_FUNC(y); \
valid->debug_function_name[0] = OTV_NAME(x); \
valid->debug_function_name[1] = OTV_NAME(y); \
#define OTV_NEST2( x, y ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC( x ); \
valid->func[1] = OTV_FUNC( y ); \
valid->debug_function_name[0] = OTV_NAME( x ); \
valid->debug_function_name[1] = OTV_NAME( y ); \
FT_END_STMNT
/* use preprocessor's argument prescan to expand three arguments into six */
#define OTV_NEST3( x, y, z ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC(x); \
valid->func[1] = OTV_FUNC(y); \
valid->func[2] = OTV_FUNC(z); \
valid->debug_function_name[0] = OTV_NAME(x); \
valid->debug_function_name[1] = OTV_NAME(y); \
valid->debug_function_name[2] = OTV_NAME(z); \
#define OTV_NEST3( x, y, z ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC( x ); \
valid->func[1] = OTV_FUNC( y ); \
valid->func[2] = OTV_FUNC( z ); \
valid->debug_function_name[0] = OTV_NAME( x ); \
valid->debug_function_name[1] = OTV_NAME( y ); \
valid->debug_function_name[2] = OTV_NAME( z ); \
FT_END_STMNT
#define OTV_INIT valid->debug_indent = 0
@ -174,28 +171,25 @@ FT_BEGIN_HEADER
#else /* !FT_DEBUG_LEVEL_TRACE */
/* use preprocessor's argument prescan to expand one argument into two */
#define OTV_NEST1( x ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC(x); \
#define OTV_NEST1( x ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC( x ); \
FT_END_STMNT
/* use preprocessor's argument prescan to expand two arguments into four */
#define OTV_NEST2( x, y ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC(x); \
valid->func[1] = OTV_FUNC(y); \
#define OTV_NEST2( x, y ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC( x ); \
valid->func[1] = OTV_FUNC( y ); \
FT_END_STMNT
/* use preprocessor's argument prescan to expand three arguments into six */
#define OTV_NEST3( x, y, z ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC(x); \
valid->func[1] = OTV_FUNC(y); \
valid->func[2] = OTV_FUNC(z); \
#define OTV_NEST3( x, y, z ) \
FT_BEGIN_STMNT \
valid->nesting_level = 0; \
valid->func[0] = OTV_FUNC( x ); \
valid->func[1] = OTV_FUNC( y ); \
valid->func[2] = OTV_FUNC( z ); \
FT_END_STMNT
#define OTV_INIT do ; while ( 0 )
@ -338,22 +332,6 @@ FT_BEGIN_HEADER
/*************************************************************************/
/*************************************************************************/
#if 0
#define ChainPosClassSet otv_x_Ox, "ChainPosClassSet"
#define ChainPosRuleSet otv_x_Ox, "ChainPosRuleSet"
#define ChainSubClassSet otv_x_Ox, "ChainSubClassSet"
#define ChainSubRuleSet otv_x_Ox, "ChainSubRuleSet"
#define JstfLangSys otv_x_Ox, "JstfLangSys"
#define JstfMax otv_x_Ox, "JstfMax"
#define LigGlyph otv_x_Ox, "LigGlyph"
#define LigatureArray otv_x_Ox, "LigatureArray"
#define LigatureSet otv_x_Ox, "LigatureSet"
#define PosClassSet otv_x_Ox, "PosClassSet"
#define PosRuleSet otv_x_Ox, "PosRuleSet"
#define SubClassSet otv_x_Ox, "SubClassSet"
#define SubRuleSet otv_x_Ox, "SubRuleSet"
#endif
#define ChainPosClassSetFunc otv_x_Ox
#define ChainPosRuleSetFunc otv_x_Ox
#define ChainSubClassSetFunc otv_x_Ox
@ -372,16 +350,6 @@ FT_BEGIN_HEADER
otv_x_Ox ( FT_Bytes table,
OTV_Validator valid );
#if 0
#define AlternateSubstFormat1 otv_u_C_x_Ox, "AlternateSubstFormat1"
#define ChainContextPosFormat1 otv_u_C_x_Ox, "ChainContextPosFormat1"
#define ChainContextSubstFormat1 otv_u_C_x_Ox, "ChainContextSubstFormat1"
#define ContextPosFormat1 otv_u_C_x_Ox, "ContextPosFormat1"
#define ContextSubstFormat1 otv_u_C_x_Ox, "ContextSubstFormat1"
#define LigatureSubstFormat1 otv_u_C_x_Ox, "LigatureSubstFormat1"
#define MultipleSubstFormat1 otv_u_C_x_Ox, "MultipleSubstFormat1"
#endif
#define AlternateSubstFormat1Func otv_u_C_x_Ox
#define ChainContextPosFormat1Func otv_u_C_x_Ox
#define ChainContextSubstFormat1Func otv_u_C_x_Ox
@ -390,19 +358,10 @@ FT_BEGIN_HEADER
#define LigatureSubstFormat1Func otv_u_C_x_Ox
#define MultipleSubstFormat1Func otv_u_C_x_Ox
FT_LOCAL( void )
otv_u_C_x_Ox( FT_Bytes table,
OTV_Validator valid );
#if 0
#define AlternateSet otv_x_ux, "AlternateSet"
#define AttachPoint otv_x_ux, "AttachPoint"
#define ExtenderGlyph otv_x_ux, "ExtenderGlyph"
#define JstfGPOSModList otv_x_ux, "JstfGPOSModList"
#define JstfGSUBModList otv_x_ux, "JstfGSUBModList"
#define Sequence otv_x_ux, "Sequence"
#endif
#define AlternateSetFunc otv_x_ux
#define AttachPointFunc otv_x_ux
#define ExtenderGlyphFunc otv_x_ux
@ -414,13 +373,6 @@ FT_BEGIN_HEADER
otv_x_ux( FT_Bytes table,
OTV_Validator valid );
#if 0
#define PosClassRule otv_x_y_ux_sy, "PosClassRule"
#define PosRule otv_x_y_ux_sy, "PosRule"
#define SubClassRule otv_x_y_ux_sy, "SubClassRule"
#define SubRule otv_x_y_ux_sy, "SubRule"
#endif
#define PosClassRuleFunc otv_x_y_ux_sy
#define PosRuleFunc otv_x_y_ux_sy
#define SubClassRuleFunc otv_x_y_ux_sy
@ -430,13 +382,6 @@ FT_BEGIN_HEADER
otv_x_y_ux_sy( FT_Bytes table,
OTV_Validator valid );
#if 0
#define ChainPosClassRule otv_x_ux_y_uy_z_uz_p_sp, "ChainPosClassRule"
#define ChainPosRule otv_x_ux_y_uy_z_uz_p_sp, "ChainPosRule"
#define ChainSubClassRule otv_x_ux_y_uy_z_uz_p_sp, "ChainSubClassRule"
#define ChainSubRule otv_x_ux_y_uy_z_uz_p_sp, "ChainSubRule"
#endif
#define ChainPosClassRuleFunc otv_x_ux_y_uy_z_uz_p_sp
#define ChainPosRuleFunc otv_x_ux_y_uy_z_uz_p_sp
#define ChainSubClassRuleFunc otv_x_ux_y_uy_z_uz_p_sp
@ -446,11 +391,6 @@ FT_BEGIN_HEADER
otv_x_ux_y_uy_z_uz_p_sp( FT_Bytes table,
OTV_Validator valid );
#if 0
#define ContextPosFormat2 otv_u_O_O_x_Onx, "ContextPosFormat2"
#define ContextSubstFormat2 otv_u_O_O_x_Onx, "ContextSubstFormat2"
#endif
#define ContextPosFormat2Func otv_u_O_O_x_Onx
#define ContextSubstFormat2Func otv_u_O_O_x_Onx
@ -458,11 +398,6 @@ FT_BEGIN_HEADER
otv_u_O_O_x_Onx( FT_Bytes table,
OTV_Validator valid );
#if 0
#define ContextPosFormat3 otv_u_x_y_Ox_sy, "ContextPosFormat3"
#define ContextSubstFormat3 otv_u_x_y_Ox_sy, "ContextSubstFormat3"
#endif
#define ContextPosFormat3Func otv_u_x_y_Ox_sy
#define ContextSubstFormat3Func otv_u_x_y_Ox_sy
@ -470,11 +405,6 @@ FT_BEGIN_HEADER
otv_u_x_y_Ox_sy( FT_Bytes table,
OTV_Validator valid );
#if 0
#define ChainContextPosFormat2 otv_u_O_O_O_O_x_Onx, "ChainContextPosFormat2"
#define ChainContextSubstFormat2 otv_u_O_O_O_O_x_Onx, "ChainContextSubstFormat2"
#endif
#define ChainContextPosFormat2Func otv_u_O_O_O_O_x_Onx
#define ChainContextSubstFormat2Func otv_u_O_O_O_O_x_Onx
@ -482,11 +412,6 @@ FT_BEGIN_HEADER
otv_u_O_O_O_O_x_Onx( FT_Bytes table,
OTV_Validator valid );
#if 0
#define ChainContextPosFormat3 otv_u_x_Ox_y_Oy_z_Oz_p_sp, "ChainContextPosFormat3"
#define ChainContextSubstFormat3 otv_u_x_Ox_y_Oy_z_Oz_p_sp, "ChainContextSubstFormat3"
#endif
#define ChainContextPosFormat3Func otv_u_x_Ox_y_Oy_z_Oz_p_sp
#define ChainContextSubstFormat3Func otv_u_x_Ox_y_Oy_z_Oz_p_sp

View File

@ -88,7 +88,7 @@
/*************************************************************************/
/*************************************************************************/
#define CaretValueFunc otv_CaretValue_validate
#define CaretValueFunc otv_CaretValue_validate
static void
otv_CaretValue_validate( FT_Bytes table,

View File

@ -861,7 +861,8 @@
/* context rules since even invalid glyph indices/classes return */
/* meaningful results */
OTV_NEST3( ChainContextPosFormat2,ChainPosClassSet, ChainPosClassRule );
OTV_NEST3( ChainContextPosFormat2,
ChainPosClassSet, ChainPosClassRule );
OTV_RUN( table, valid );
break;

View File

@ -176,18 +176,19 @@
*metrics = size->root.metrics;
/* This bit flag, when set, indicates that the pixel size must be */
/* rounded to integer. Nearly all TrueType fonts have this bit */
/* rounded to integer. Nearly all TrueType fonts have this bit */
/* set, as hinting won't work really well otherwise. */
/* */
if ( ( face->header.Flags & 8 ) != 0 )
{
FT_Long dim_x, dim_y;
dim_x = ( char_width * horz_resolution + 36 ) / 72;
dim_y = ( char_height * vert_resolution + 36 ) / 72;
dim_x = FT_PIX_ROUND(dim_x);
dim_y = FT_PIX_ROUND(dim_y);
dim_x = FT_PIX_ROUND( dim_x );
dim_y = FT_PIX_ROUND( dim_y );
metrics->x_ppem = (FT_UShort)( dim_x >> 6 );
metrics->y_ppem = (FT_UShort)( dim_y >> 6 );

View File

@ -1778,8 +1778,8 @@
if ( face->os2.version != 0xFFFFU )
{
/* sTypoDescender is negative */
max_height = (FT_Short)(face->os2.sTypoAscender -
face->os2.sTypoDescender);
max_height = (FT_Short)(face->os2.sTypoAscender -
face->os2.sTypoDescender);
top_bearing = (FT_Short)( ( max_height - height ) / 2 );
advance_height = (FT_UShort)( max_height + face->os2.sTypoLineGap );

View File

@ -133,7 +133,7 @@
}
else
{
zone->max_points = maxPoints;
zone->max_points = maxPoints;
zone->max_contours = maxContours;
}
@ -321,13 +321,14 @@
/*************************************************************************/
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
/*************************************************************************/
/* */
/* <Function> */
/* tt_size_run_fpgm */
/* */
/* <Description> */
/* Run the font program */
/* Run the font program. */
/* */
/* <Input> */
/* size :: A handle to the size object. */
@ -415,7 +416,7 @@
/* tt_size_run_prep */
/* */
/* <Description> */
/* Run the control value program */
/* Run the control value program. */
/* */
/* <Input> */
/* size :: A handle to the size object. */
@ -474,6 +475,7 @@
return error;
}
#endif /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
@ -496,7 +498,9 @@
{
TT_Size size = (TT_Size)ttsize;
FT_Error error = TT_Err_Ok;
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
TT_Face face = (TT_Face)size->root.face;
FT_Memory memory = face->root.memory;
FT_Int i;
@ -605,7 +609,9 @@
tt_size_done( FT_Size ttsize ) /* TT_Size */
{
TT_Size size = (TT_Size)ttsize;
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
FT_Memory memory = size->root.face->memory;
@ -712,6 +718,7 @@
#endif
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
{
FT_UInt i;
@ -738,6 +745,7 @@
error = tt_size_run_prep( size );
}
#endif /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
if ( !error )

View File

@ -4,7 +4,7 @@
/* */
/* Objects manager (specification). */
/* */
/* Copyright 1996-2001, 2002, 2003, 2004 by */
/* Copyright 1996-2001, 2002, 2003, 2004, 2005 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */
/* This file is part of the FreeType project, and may only be used, */
@ -418,11 +418,13 @@ FT_BEGIN_HEADER
tt_size_done( FT_Size ttsize ); /* TT_Size */
#ifdef TT_CONFIG_OPTION_BYTECODE_INTERPRETER
FT_LOCAL( FT_Error )
tt_size_run_fpgm( TT_Size size );
FT_LOCAL( FT_Error )
tt_size_run_prep( TT_Size size );
#endif /* TT_CONFIG_OPTION_BYTECODE_INTERPRETER */
FT_LOCAL( FT_Error )