forked from minhngoc25a/freetype2
* include/freetype/internal/ftobjs.h, src/autohint/ahglyph.c,
src/base/ftobjs.c, src/objs/fttype1.c, src/sfnt/ttcmap0.c, src/smooth/ftgrays.c: changed uses of "setjmp" and "longjmp" to "ft_setjmp" and "ft_lonjmp". Removed direct references to <stdio.h> and <setjmp.h> when appropriate, to eventually replace them with a FT_CONFIG_STANDARD_LIBRARY_H. Useful for the XFree86 Font Server backend based on FT2.
This commit is contained in:
parent
b1d8f73df6
commit
25a6e3a167
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,13 @@
|
|||
2002-06-08 Juliusz Chroboczek <jch@pps.jussieu.fr>
|
||||
|
||||
* include/freetype/internal/ftobjs.h, src/autohint/ahglyph.c,
|
||||
src/base/ftobjs.c, src/objs/fttype1.c, src/sfnt/ttcmap0.c,
|
||||
src/smooth/ftgrays.c: changed uses of "setjmp" and "longjmp"
|
||||
to "ft_setjmp" and "ft_lonjmp". Removed direct references to
|
||||
<stdio.h> and <setjmp.h> when appropriate, to eventually replace
|
||||
them with a FT_CONFIG_STANDARD_LIBRARY_H. Useful for the XFree86
|
||||
Font Server backend based on FT2.
|
||||
|
||||
2002-06-08 David Turner <david@freetype.org>
|
||||
|
||||
* src/pcf/pcfdriver.c (pcf_cmap_char_next): fixed a bug that caused
|
||||
|
|
|
@ -26,8 +26,8 @@
|
|||
#ifndef __FTOBJS_H__
|
||||
#define __FTOBJS_H__
|
||||
|
||||
#include <setjmp.h>
|
||||
#include <ft2build.h>
|
||||
#include FT_CONFIG_STANDARD_LIBRARY_H /* for ft_setjmp and ft_longjmp */
|
||||
#include FT_RENDER_H
|
||||
#include FT_SIZES_H
|
||||
#include FT_INTERNAL_MEMORY_H
|
||||
|
|
|
@ -26,11 +26,11 @@
|
|||
#include "ahglobal.h"
|
||||
#include "aherrors.h"
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
|
||||
#ifdef AH_DEBUG
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
void
|
||||
ah_dump_edges( AH_Outline* outline )
|
||||
{
|
||||
|
|
|
@ -37,15 +37,15 @@
|
|||
valid->level = level;
|
||||
valid->error = 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
FT_BASE_DEF( FT_Int )
|
||||
ft_validator_run( FT_Validator valid )
|
||||
{
|
||||
int result;
|
||||
|
||||
|
||||
result = setjmp( valid->jump_buffer );
|
||||
|
||||
result = ft_setjmp( valid->jump_buffer );
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -55,8 +55,8 @@
|
|||
FT_Error error )
|
||||
{
|
||||
valid->error = error;
|
||||
longjmp( valid->jump_buffer, 1 );
|
||||
}
|
||||
ft_longjmp( valid->jump_buffer, 1 );
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
|
@ -619,18 +619,18 @@
|
|||
/* discard charmaps */
|
||||
{
|
||||
FT_Int n;
|
||||
|
||||
|
||||
|
||||
for ( n = 0; n < face->num_charmaps; n++ )
|
||||
{
|
||||
FT_CMap cmap = FT_CMAP( face->charmaps[n] );
|
||||
|
||||
|
||||
|
||||
FT_CMap_Done( cmap );
|
||||
|
||||
|
||||
face->charmaps[n] = NULL;
|
||||
}
|
||||
|
||||
|
||||
FT_FREE( face->charmaps );
|
||||
face->num_charmaps = 0;
|
||||
}
|
||||
|
@ -1515,7 +1515,7 @@
|
|||
if ( face && face->charmap )
|
||||
{
|
||||
FT_CMap cmap = FT_CMAP( face->charmap );
|
||||
|
||||
|
||||
|
||||
result = cmap->clazz->char_index( cmap, charcode );
|
||||
}
|
||||
|
@ -2403,7 +2403,7 @@
|
|||
|
||||
|
||||
/* documentation is in freetype.h */
|
||||
|
||||
|
||||
FT_EXPORT_DEF( void )
|
||||
FT_Library_Version( FT_Library library,
|
||||
FT_Int *amajor,
|
||||
|
@ -2414,23 +2414,23 @@
|
|||
FT_Int minor = 0;
|
||||
FT_Int patch = 0;
|
||||
|
||||
|
||||
|
||||
if ( library )
|
||||
{
|
||||
major = library->version_major;
|
||||
minor = library->version_minor;
|
||||
patch = library->version_patch;
|
||||
}
|
||||
|
||||
|
||||
if ( *amajor )
|
||||
*amajor = major;
|
||||
|
||||
|
||||
if ( *aminor )
|
||||
*aminor = minor;
|
||||
|
||||
|
||||
if ( *apatch )
|
||||
*apatch = patch;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftmodule.h */
|
||||
|
|
|
@ -89,8 +89,8 @@
|
|||
/* this will probably happen later... */
|
||||
|
||||
driver_name = face->driver->root.clazz->module_name;
|
||||
result = ( ft_strcmp( driver_name, "type1" ) ||
|
||||
ft_strcmp( driver_name, "cff" ) );
|
||||
result = ( ft_strcmp( driver_name, "type1" ) == 0 ||
|
||||
ft_strcmp( driver_name, "cff" ) == 0 );
|
||||
}
|
||||
|
||||
return result;
|
||||
|
|
|
@ -742,42 +742,42 @@
|
|||
FT_UInt min = 0;
|
||||
FT_UInt max = num_segs2 >> 1;
|
||||
FT_UInt mid, start, end, offset;
|
||||
|
||||
|
||||
|
||||
while ( min < max )
|
||||
{
|
||||
mid = ( min + max ) >> 1;
|
||||
p = table + 14 + mid * 2;
|
||||
end = TT_NEXT_USHORT( p );
|
||||
end = TT_NEXT_USHORT( p );
|
||||
p += num_segs2;
|
||||
start = TT_PEEK_USHORT( p);
|
||||
|
||||
|
||||
if ( code < start )
|
||||
max = mid;
|
||||
|
||||
|
||||
else if ( code > end )
|
||||
min = mid + 1;
|
||||
|
||||
|
||||
else
|
||||
{
|
||||
/* we found the segment */
|
||||
idx = code;
|
||||
|
||||
|
||||
p += num_segs2;
|
||||
delta = TT_PEEK_SHORT( p );
|
||||
|
||||
|
||||
p += num_segs2;
|
||||
offset = TT_PEEK_USHORT( p );
|
||||
|
||||
|
||||
if ( offset != 0 )
|
||||
{
|
||||
p += offset + 2 * ( idx - start );
|
||||
idx = TT_PEEK_USHORT( p );
|
||||
}
|
||||
|
||||
|
||||
if ( idx != 0 )
|
||||
result = (FT_UInt)( idx + delta ) & 0xFFFFU;
|
||||
|
||||
|
||||
goto Exit;
|
||||
}
|
||||
}
|
||||
|
@ -793,32 +793,32 @@
|
|||
p = table + 14; /* ends table */
|
||||
q = table + 16 + num_segs2; /* starts table */
|
||||
|
||||
|
||||
|
||||
for ( n = 0; n < num_segs2; n += 2 )
|
||||
{
|
||||
FT_UInt end = TT_NEXT_USHORT( p );
|
||||
FT_UInt start = TT_NEXT_USHORT( q );
|
||||
FT_UInt offset;
|
||||
|
||||
|
||||
|
||||
|
||||
if ( code < start )
|
||||
break;
|
||||
|
||||
|
||||
if ( code <= end )
|
||||
{
|
||||
idx = code;
|
||||
|
||||
|
||||
p = q + num_segs2 - 2;
|
||||
delta = TT_PEEK_SHORT( p );
|
||||
p += num_segs2;
|
||||
offset = TT_PEEK_USHORT( p );
|
||||
|
||||
|
||||
if ( offset != 0 )
|
||||
{
|
||||
p += offset + 2 * ( idx - start );
|
||||
idx = TT_PEEK_USHORT( p );
|
||||
}
|
||||
|
||||
|
||||
if ( idx != 0 )
|
||||
result = (FT_UInt)( idx + delta ) & 0xFFFFU;
|
||||
}
|
||||
|
@ -828,7 +828,7 @@
|
|||
#endif /* 0 */
|
||||
|
||||
}
|
||||
|
||||
|
||||
Exit:
|
||||
return result;
|
||||
}
|
||||
|
@ -1032,7 +1032,7 @@
|
|||
FT_UInt32 result = 0;
|
||||
FT_UInt32 char_code = *pchar_code + 1;
|
||||
FT_UInt gindex = 0;
|
||||
|
||||
|
||||
FT_Byte* p = table + 6;
|
||||
FT_UInt start = TT_NEXT_USHORT( p );
|
||||
FT_UInt count = TT_NEXT_USHORT( p );
|
||||
|
@ -1716,14 +1716,14 @@
|
|||
if ( clazz->format == format )
|
||||
{
|
||||
volatile TT_ValidatorRec valid;
|
||||
|
||||
|
||||
|
||||
ft_validator_init( FT_VALIDATOR( &valid ), cmap, limit,
|
||||
FT_VALIDATE_DEFAULT );
|
||||
|
||||
|
||||
valid.num_glyphs = face->root.num_glyphs;
|
||||
|
||||
if ( setjmp( FT_VALIDATOR( &valid )->jump_buffer ) == 0 )
|
||||
if ( ft_setjmp( FT_VALIDATOR( &valid )->jump_buffer ) == 0 )
|
||||
{
|
||||
/* validate this cmap sub-table */
|
||||
clazz->validate( cmap, FT_VALIDATOR( &valid ) );
|
||||
|
|
|
@ -106,6 +106,11 @@
|
|||
#include <limits.h>
|
||||
#define FT_UINT_MAX UINT_MAX
|
||||
|
||||
#define ft_setjmp setjmp
|
||||
#define ft_longjmp longjmp
|
||||
#define ft_jmp_buf jmp_buf
|
||||
|
||||
|
||||
#define ErrRaster_Invalid_Mode -2
|
||||
#define ErrRaster_Invalid_Outline -1
|
||||
|
||||
|
@ -391,7 +396,7 @@
|
|||
if ( !ras.invalid && ( ras.area | ras.cover ) )
|
||||
{
|
||||
if ( ras.num_cells >= ras.max_cells )
|
||||
longjmp( ras.jump_buffer, 1 );
|
||||
ft_longjmp( ras.jump_buffer, 1 );
|
||||
|
||||
cell = ras.cells + ras.num_cells++;
|
||||
cell->x = ras.ex - ras.min_ex;
|
||||
|
@ -1355,7 +1360,7 @@
|
|||
if ( ras.outline.flags & ft_outline_even_odd_fill )
|
||||
{
|
||||
coverage &= 511;
|
||||
|
||||
|
||||
if ( coverage > 256 )
|
||||
coverage = 512 - coverage;
|
||||
else if ( coverage == 256 )
|
||||
|
@ -1791,7 +1796,7 @@
|
|||
|
||||
volatile int error = 0;
|
||||
|
||||
if ( setjmp( ras.jump_buffer ) == 0 )
|
||||
if ( ft_setjmp( ras.jump_buffer ) == 0 )
|
||||
{
|
||||
error = FT_Outline_Decompose( &ras.outline, &func_interface, &ras );
|
||||
gray_record_cell( RAS_VAR );
|
||||
|
|
Loading…
Reference in New Issue