Werner Lemberg
89f5064765
*/*: Use FT_ERR_EQ, FT_ERR_NEQ, and FT_ERR where appropriate.
...
FT_Err_XXX and friends are no longer directly used in the source
code.
2013-03-14 17:50:49 +01:00
Werner Lemberg
e3c9301581
*/*: Use FT_Err_Ok only.
...
This is a purely mechanical conversion.
2013-03-14 11:21:17 +01:00
Werner Lemberg
059bc335ce
*/*: Use `FT_THROW'.
...
This is essentially a mechanical conversion, adding inclusion of
`FT_INTERNAL_DEBUG_H' where necessary, and providing the macros for
stand-alone compiling modes of the rasterizer modules.
To convert the remaining occurrences of FT_Err_XXX and friends it is
necessary to rewrite the code. Note, however, that it doesn't harm
if some cases are not handled since FT_THROW is a no-op.
2013-03-14 10:27:35 +01:00
Vinnie Falco
26dfeb6d63
Prepare source code for amalgamation.
...
* src\autofit\aferrors.h, src\bdf\bdferror.h, src\bzip2\ftbzip2.c,
src\cache\ftcerror.h, src\cff\cfferrs.h, src\cid\ciderrs.h,
src\gxvalid\gxverror.h, src\gzip\ftgzip.c, src\lzw\ftlzw.c,
src\otvalid\otverror.h, src\pcf\pcferror.h, src\pfr\pfrerror.h,
src\psaux\psauxerr.h, src\pshinter\pshnterr.h,
src\psnames\psnamerr.h, src\raster\rasterrs.h, src\sfnt\sferrors.h,
src\smooth\ftsmerrs.h, src\truetype\tterrors.h,
src\type1\t1errors.h, src\type42\t42error.h, src\winfonts\fnterrs.h:
Add #undef FT_ERR_PREFIX before #define FT_ERR_PREFIX.
2012-03-08 06:04:03 +01:00
suzuki toshiya
1749d8bc6a
Remove trailing spaces.
2012-01-17 02:00:24 +09:00
Werner Lemberg
d5260597b2
Cosmetics.
2011-11-30 13:10:54 +01:00
Werner Lemberg
c52f44d4fd
Whitespace.
2011-11-30 10:46:53 +01:00
Werner Lemberg
70cf8c5e6d
Improve tracing.
...
* src/bdf/bdfdrivr.c (BDF_Face_Done), src/pcf/pcfdrivr.c
(PCF_Face_Done): Remove tracing message.
* src/bdf/bdfdrivr.c (BDF_Face_Init), src/cff/cffobjs.c
(cff_face_init), src/cid/cidobjs.c (cid_face_init),
src/pfr/pfrobjs.c (pfr_face_init), src/sfnt/sfobjs.c
(sfnt_init_face), src/truetype/ttobjs.c (tt_face_init),
src/type1/t1objs.c (T1_Face_Init), src/type42/t42objs.c
(T42_Face_Init), src/winfonts/winfnt.c (FNT_Face_Init): Add
`greeting' message.
* src/sfnt/sfobjs.c (sfnt_open_font), src/type42/t42objs.c
(T42_Open_Face): Improve tracing.
2011-11-26 20:09:39 +01:00
suzuki toshiya
e62c876bb0
Fix g++4.6 compiler warnings in module drivers.
...
The background is same with previous commit.
* src/truetype/ttgxvar.c (ft_var_readpackedpoints):
Init `points'. (TT_Vary_Get_Glyph_Deltas): Init
`delta_xy'. (TT_Get_MM_Var): Init `mmvar'.
* src/type1/t1load.c (T1_Get_MM_Var): Ditto.
* src/cff/cffdrivr.c (cff_ps_get_font_info): Init
`font_info'.
* src/cff/cffload.c (cff_index_get_pointers): Init `t'.
(cff_font_load): Init `sub'.
* src/cff/cffobjs.c (cff_size_init): Init `internal'.
(cff_face_init): Init `cff'.
* src/pfr/pfrload.c (pfr_extra_item_load_stem_snaps):
Init `snaps'.
* src/pcf/pcfread.c (pcf_get_properties): Init `properties'.
(pcf_get_bitmaps): Init `offsets'. (pcf_get_encodings):
Init `tmpEncoding'.
* src/sfnt/ttload.c (tt_face_load_gasp): Init `gaspranges'.
* src/sfnt/ttsbit.c (Load_SBit_Image): Init `components'.
* src/cache/ftcmru.c (FTC_MruList_New): Init `node'.
* src/gzip/ftgzip.c (FT_Stream_OpenGzip): Init `zip' and
`zip_buff'.
* src/lzw/ftlzw.c (FT_Stream_OpenLZW): Init `zip'.
* src/bzip2/ftbzip2.c (FT_Stream_OpenBzip2): Init `zip'.
2011-06-15 02:48:33 +09:00
Werner Lemberg
c8f5b98be2
Remove C++ warnings.
...
*/*: Initialize pointers where necessary to make g++ happy.
2010-07-12 21:13:22 +02:00
suzuki toshiya
840f208df4
Use defined macros to set {platform,encoding}_id.
...
* src/bdf/bdfdrivr.c: Include ttnameid.h and use macros to
set charmap.{platfom,encoding}_id.
* src/pcf/pcfdrivr.c: Ditto.
* src/winfonts/winfnt.c: Ditto.
* src/type1/t1objs.c: Ditto.
* src/type42/t42objs.c: Ditto.
* src/cff/cffobjs.c: Ditto.
* src/pfr/pfrobjs.c: Ditto.
2010-07-09 22:51:49 +09:00
suzuki toshiya
a874c7ecca
Check error value by `FT_CMap_New'.
...
* src/cff/cffobjs.c (cff_face_init): Check error value by
`FT_CMap_New'.
* src/pfr/pfrobjs.c (pfr_face_init): Ditto.
* src/type1/t1jobjs.c (T1_Face_Init): Ditto.
* src/type42/t42jobjs.c (T42_Face_Init): Ditto.
2010-07-04 12:08:41 +09:00
Werner Lemberg
1c70fcbc0a
Fix PFR change 2010-06-24.
...
* src/pfr/pfrgload.c (pfr_glyph_load_simple): Really protect against
invalid indices.
2010-06-27 00:43:23 +02:00
Werner Lemberg
91ea0bf80d
Improve PFR tracing messages.
...
* src/pfr/pfrgload.c (pfr_glyph_load_rec): Emit tracing messages for
simple and compound glyph offsets.
2010-06-26 22:46:38 +02:00
Werner Lemberg
82ad8ab242
Fix last PFR change.
...
* src/pfr/pfrobjs.c (pfr_face_init): Fix rejection logic.
2010-06-26 09:45:41 +02:00
Werner Lemberg
ea5babaa67
Fix Savannah bug #30261 .
...
* src/pfr/pfrobjs.c (pfr_face_init): Reject fonts which contain
neither outline nor bitmap glyphs.
2010-06-25 22:44:37 +02:00
Werner Lemberg
f765e4403c
*/*: Use module specific error names where appropriate.
2010-06-24 10:34:29 +02:00
Werner Lemberg
3cf87f4d27
Fix Savannah bug #30235 .
...
* src/pfr/pfrgload.c (pfr_glyph_load_simple): Protect against
invalid indices if there aren't any coordinates for indexing.
2010-06-24 08:20:56 +02:00
Werner Lemberg
ddc4b136d6
Fix Savannah bug #30168 .
...
* src/pfr/pfrgload.c (pfr_glyph_load_compound): Limit the number of
subglyphs to avoid endless recursion.
2010-06-21 09:28:32 +02:00
Werner Lemberg
9045f5bdf2
Fix compiler warnings.
...
* src/truetype/ttgload.c (tt_get_metrics): Put `Exit' label into the
proper preprocessor conditional.
* src/pfr/pfrobjs.c (pfr_slot_load): Pacify gcc.
2009-12-03 05:57:30 +01:00
suzuki toshiya
3783dac000
pfr: Extend `num_aux' to take 32-bit value.
2009-08-01 00:37:56 +09:00
suzuki toshiya
737634e5e4
pfr: Fix a data type mismatching with its source.
2009-08-01 00:32:21 +09:00
suzuki toshiya
b12b8c3ce4
pfr: Fix a data type mismatching with its source.
2009-08-01 00:32:21 +09:00
suzuki toshiya
c4420d97f4
pfr: Fix a data type mismatching with its source.
2009-08-01 00:32:21 +09:00
suzuki toshiya
3f0f2e462b
XXX_cmap_encoding_char_next() return FT_UInt32 values.
2009-08-01 00:32:09 +09:00
suzuki toshiya
e866cf3f55
Improve bitmap size or pixel variables for 16-bit systems.
2009-08-01 00:32:06 +09:00
Werner Lemberg
858abbedc0
For warning messages, replace FT_ERROR with FT_TRACE0.
...
FT_ERROR is now used only if a function produces a non-zero `error'
value.
Formatting, improving and harmonizing debug strings.
2009-06-26 06:15:41 +02:00
Oran Agra
1dcd0f2399
Add #error to modules and files that do not support PIC yet.
...
When FT_CONFIG_OPTION_PIC is defined the following files will
create #error:
* src/bdf/bdfdrivr.h
* src/cache/ftcmanag.c
* src/cid/cidriver.h
* src/gxvalid/gxvmod.h
* src/gzip/ftgzip.c
* src/lzw/ftlzw.c
* src/otvalid/otvmod.h
* src/pcf/pcfdrivr.h
* src/pfr/pfrdrivr.h
* src/psaux/psauxmod.h
* src/type1/t1driver.h
* src/type42/t42drivr.h
* src/winfonts/winfnt.h
2009-04-05 18:25:14 +03:00
Werner Lemberg
86e041b5a8
Remove redundant header inclusions.
...
This covers many Ghostscript Coverity issues.
* src/*: Do it.
2009-03-21 08:51:44 +01:00
Werner Lemberg
3c5ad95166
* src/pfr/pfrdrivr.c, src/winfonts/winfnt.c, src/cache/ftcmanag.c,
...
src/smooth/ftgrays.c, src/base/ftobjc.s, src/sfobjs.c:
s/_Err_Bad_Argument/_Err_Invalid_Argument/. The former is for
errors in the bytecode interpreter only.
2008-12-21 17:51:12 +00:00
Werner Lemberg
ce33a312da
FT_USE_MODULE declares things as:
...
extern const FT_Module_Class
(or similar for C++). However, the actual types of the variables
being declared are often different, e.g., FT_Driver_ClassRec or
FT_Renderer_Class. (Some are, indeed, FT_Module_Class.)
This works with most C compilers (since those structs begin with an
FT_Module_Class struct), but technically it's undefined behavior.
To quote the ISO/IEC 9899:TC2 final committee draft, section 6.2.7
paragraph 2:
All declarations that refer to the same object or function shall
have compatible type; otherwise, the behavior is undefined.
(And they are not compatible types.)
Most C compilers don't reject (or even detect!) code which has this
issue, but the GCC LTO development branch compiler does. (It
outputs the types of the objects while generating .o files, along
with a bunch of other information, then compares them when doing the
final link-time code generation pass.)
Patch from Savannah bug #25133 .
* src/base/ftinit.c (FT_USE_MODULE): Include variable type.
* builds/amiga/include/freetype/config/ftmodule.h,
include/freetype/config/ftmodule.h, */module.mk: Updated to declare
pass correct types to FT_USE_MODULE.
2008-12-21 10:29:30 +00:00
Werner Lemberg
d03d856d95
* src/truetype/ttobjs.c (tt_face_done), src/cff/cffobjs.c
...
(cff_face_done), src/pfr/pfrobjs.c (pfr_face_done),
src/pcf/pcfdrivr.c (PCF_Face_Done), src/cid/cidobjs.c
(cid_face_done), src/bdf/bdfdrivr. (BDF_Face_Done),
src/sfnt/sfobjs.c (sfnt_face_done): Protect against face == 0.
Reported by Graham Asher.
2008-10-01 22:39:05 +00:00
Werner Lemberg
50997cd742
* src/pfr/pfrdrivr.c (pfr_get_advance): Fix off-by-one error.
...
* src/base/ftcalc.c (FT_MulFix): Fix portability issue.
* src/sfnt/ttpost.c (MAC_NAME) [!FT_CONFIG_OPTION_POSTSCRIPT_NAMES]:
Fix compiler warning.
2008-07-16 21:03:40 +00:00
Werner Lemberg
c0da523270
* src/pfr/pfrgload.c (pfr_glyph_load_compound): Remove compiler
...
warning.
2007-12-04 21:44:32 +00:00
Werner Lemberg
9a966b7d1b
Add support for cmap type 14.
...
* devel/ftoption.h, include/freetype/config/ftoption.h
(TT_CONFIG_CMAP_FORMAT_14): New macro.
* include/freetype/internal/ftobjs.h (FT_CMap_CharVarIndexFunc,
FT_CMap_CharVarIsDefaultFunc, FT_CMap_VariantListFunc,
FT_CMap_CharVariantListFunc, FT_CMap_VariantCharListFunc): New
support function prototypes.
(FT_CMap_ClassRec): Add them.
Update all users.
* include/freetype/ttnameid.h (TT_APPLE_ID_VARIANT_SELECTOR): New
macro.
* include/freetype/freetype.h (FT_Get_Char_Variant_Index,
FT_Get_Char_Variant_IsDefault, FT_Get_Variant_Selectors,
FT_Get_Variants_Of_Char, FT_Get_Chars_Of_Variant): New API
functions.
* src/base/ftobjs.c (find_variant_selector_charmap): New auxiliary
function.
(FT_Set_Charmap): Disallow cmaps of type 14.
(FT_Get_Char_Variant_Index, FT_Get_Char_Variant_IsDefault,
FT_Get_Variant_Selectors, FT_Get_Variants_Of_Char,
FT_Get_Chars_Of_Variant): New API functions.
* src/sfnt/ttcmap.c (TT_PEEK_UINT24, TT_NEXT_UINT24): New macros.
(TT_CMap14Rec, tt_cmap14_init, tt_cmap14_validate,
tt_cmap14_char_index, tt_cmap14_char_next, tt_cmap14_get_info,
tt_cmap14_char_map_def_binary, tt_cmap14_char_map_nondef_binary,
tt_cmap14_find_variant, tt_cmap14_char_var_index,
tt_cmap14_char_var_isdefault, tt_cmap14_variants,
tt_cmap14_char_variants, tt_cmap14_def_char_count,
tt_cmap14_get_def_chars, tt_cmap14_get_nondef_chars,
tt_cmap14_variant_chars, tt_cmap14_class_rec): New functions and
structures for cmap 14 support.
(tt_cmap_classes): Register tt_cmap14_class_rec.
(tt_face_build_cmaps): One more error message.
* docs/CHANGES: Mention cmap 14 support.
2007-10-15 17:21:32 +00:00
Werner Lemberg
1e1b6dff54
* src/pfr/pfrcmap.c: Include pfrerror.h.
...
* src/autofit/afindic.c: Add some external declarations to pacify
`make multi' compilation.
* src/cid/cidgload.c (cid_load_glyph): Pacify compiler.
* src/cff/cffdrivr.c (cff_ps_get_font_info), src/cff/cffobjs.c
(cff_strcpy), include/freetype/internal/ftmemory.h (FT_MEM_STRDUP),
src/autofit/aflatin.c (af_latin_hints_compute_edges),
src/autofit/afcjk.c (af_cjk_hints_compute_edges), src/sfnt/ttmtx.c
(tt_face_get_metrics), src/base/ftobjs.c (open_face)
[FT_CONFIG_OPTION_INCREMENTAL]: Fix compilation with C++ compiler.
* docs/release: Mention test compilation targets.
2007-07-07 07:30:40 +00:00
Werner Lemberg
88ab638e0f
* src/sfnt/ttsbit0.c (tt_sbit_decoder_init,
...
tt_sbit_decoder_load_image): Protect against integer overflows.
* src/pfr/pfrgload.c (pfr_glyph_load_simple): More bounding checks
for `x_control' and `y_control'.
2007-06-07 05:01:56 +00:00
Werner Lemberg
a8d65494cb
* src/pfr/pfrcmap.c (pfr_cmap_init): Convert assertion into normal
...
FreeType error.
2007-06-06 04:47:49 +00:00
Werner Lemberg
9a0332cd3f
* src/pfr/pfrgload.c (pfr_glyph_curve_to, pfr_glyph_line_to): Convert
...
assertion into normal FreeType error.
2007-06-05 05:50:01 +00:00
Werner Lemberg
6c05475d50
* src/pfr/pfrgload.c (pfr_glyph_done): Comment out unused code.
...
(pfr_glyph_load_simple): Convert assertion into normal FreeType
error.
Check `idx'.
(pfr_glyph_load_compound): Convert assertion into normal FreeType
error.
* src/pfr/pfrtypes.h (PFR_GlyphRec): Comment out unused code.
2007-06-05 05:27:54 +00:00
Werner Lemberg
6e87ed9f04
Spelling fixes from Alexei.
2007-01-26 22:18:56 +00:00
Werner Lemberg
9b774e2822
Remove trailing whitespace. From Alexei.
2007-01-16 06:11:27 +00:00
Werner Lemberg
f629439905
formatting, copyright years
2007-01-06 07:47:45 +00:00
David Turner
34fcd0b409
* src/pfr/pfrobjs.c (pfr_face_init): detect non-scalable fonts
...
correctly. fixes bug #17876
2007-01-05 15:55:59 +00:00
Werner Lemberg
913a365090
Because FT_Load_Glyph expects CID values for CID-keyed fonts, the
...
test for a valid glyph index must be deferred to the font drivers.
This patch fixes Savannah bug #18301 .
* src/base/ftobjs.c (FT_Load_Glyph): Don't check `glyph_index'.
* src/bdf/bdfdrivr.c (BDF_Glyph_Load), src/cff/cffgload.c
(cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph),
src/pcf/pcfdrivr.c (PCF_Glyph_Load), src/pfr/pfrobjs.c
(pfr_slot_load), src/truetype/ttdriver.c (Load_Glyph),
src/type1/t1gload.c (T1_Load_Glyph), src/winfonts/winfnt.c
(FNT_Load_Glyph): Check validity of `glyph_index'.
2006-11-19 09:19:17 +00:00
Werner Lemberg
e20df4a167
* src/pfr/pfrobjs.c (pfr_face_get_kerning): Skip adjustment bytes
...
correctly. Reported as Savannah bug #17843 .
2006-09-27 06:29:21 +00:00
David Turner
0971735dce
* src/pfr/pfrobjs.c (pfr_face_init): fix the computation
...
of 'face->num_glyphs' which missed the last glyph, due to
the offset-by-1 computation, since the PFR format doesn't
guarantee that glyph index 0 corresponds to the "missing
glyph"
should fix bug #16668
2006-06-04 14:33:08 +00:00
David Turner
da95af6cf6
* builds/win32/visualc/freetype.dsp: updating the project file, adding
...
missing base source files (e.g. ftstroke.c, ftxf86.c, etc...)
* src/autofit/afcjk.c, src/autofit/aflatin.c, src/base/ftobjs.c,
src/cff/cffobjs.c, src/cid/cidobjs.c, src/pfr/pfrobjs.c,
src/sfnt/sfobjs.c, src/sfnt/ttmtx.c, src/truetype/ttpload.c,
src/truetype/ttpload.h, src/type1/t1afm.c, src/type1/t1objs.c:
removing compiler warnings when building with Visual C++ 6 and /W4
2006-03-20 13:32:33 +00:00
Werner Lemberg
5edafed12a
Clean-ups, copyright years, formatting.
2006-02-22 08:23:35 +00:00
David Turner
1ae134a233
* src/sfnt/sfobjs.c (sfnt_face_load): fixed silly bug that
...
prevented embedded bitmaps from being correctly listed and used
* src/pfr/pfrsbit.c: fixed handling of character advances
2006-02-21 16:50:17 +00:00