2001-10-25 David Turner <david@freetype.org>
* include/freetype/config/ftoption.h: updated comment to explain
precisely how to use project-specific macro definitions without
modifying this file manually..
2001-10-24 Tom Kacvinsky <tjk@ams.org>
* builds/unix/ftsystem.c (FT_New_Memory): Added a missing `}'.
2001-10-23 David Turner <david@freetype.org>
* include/freetype/internal/ftmemory.h, src/base/ftdbgmem.c:
improvements to the memory debugger to report more information in
case of errors. Also, some allocations that occured through
REALLOC couldn't be previously catched correctly..
* src/autohint/ahglyph.c, src/raster/ftraster.c,
src/smooth/ftgrays.c: replaced liberal uses of "memset" by the
MEM_Set macro instead..
2001-10-22 David Turner <david@freetype.org>
* builds/unix/ftsystem.c, builds/vms/ftsystem.c,
builds/amiga/ftsystem.c, src/base/ftdbgmem.c: updated the memory
debugger and platform-specific implementations of 'ftsystem' in order
to be able to debug memory allocations on Unix, VMS and Amiga too !!
* src/pshinter/pshalgo2.c (psh2_hint_table_record_mask): removed some
bogus warnings..
* include/freetype/internal/ftmemory.h, src/base/ftdbgmem.c: modified
the debugging memory manager to report the location (source file name
+ line number) where leaked memory blocks are allocated in the source
file.. funny, isn't it ??
* src/base/ftdbgmem.c: new debugging memory manager. You must define
the FT_DEBUG_MEMORY macro in "ftoption.h" to enable it. It will record
every memory block allocated and report simple errors like memory
leaks and double deletes.
* include/freetype/config/ftoption.h: added the FT_DEBUG_MEMORY macro
definition
* src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory): modified the
base component to use the debugging memory manager when the macro
FT_DEBUG_MEMORY is defined..
2001-10-21 Tom Kacvinsky <tjk@ams.org>
* src/cff/cffload.c (CFF_Done_Font): Free subfonts array only if
we are working with a CID keyed CFF font. Otherwise, a variable
that was never allocated memory might freed. This is a correction
to the previous patch for freeing subfonts.
2001-10-21 Tom Kacvinsky <tjk@ams.org>
* src/cff/cffload.c (CFF_Done_Font): Free the subfonts array to
avoid a memory leak.
2001-10-21 David Turner <david@freetype.org>
* src/pshinter/pshalgo2.c, src/pshinter/pshalgo1.c,
src/pshinter/pshglob.c: removing compiler warnings in pedantic modes
(in multi-object compilation mode, mainly)
2001-10-20 Tom Kacvinsky <tjk@ams.org>
* src/type1/t1load.c (parse_encoding): Add a test to make sure
that custom encodings (i.e., neither StandardEncoding nor
ExpertEncoding) are not loaded twice when the Type 1 font is
synthetic.
* src/type1/t1load.c (parse_font_name, parse_subrs): Added a test
for when loading synthetic fonts to make sure that the font name
and subrotuines are not loaded twice. This is to remove a memory
leak that occured because the original memory blocks for these
objects were not deallocated when the objects were parsed the
second time.
2001-10-19 David Turner <david@freetype.org>
* src/smooth/ftgrays.c, src/pshinter/pshglob.h, src/pshinter/pshrec.c,
src/pshinter/pshalgo2.c: getting rid of compiler warnings
* src/pshinter/module.mk, src/pshinter/rules.mk: adding control files
to build the postscript hinter with the "old" build system
2001-10-19 Jacob Jansen <joukj@hrem.stm.tudelft.nl>
* descrip.mms, src/pshinter/descrip.mms: updates to the VMS build
files.
2001-10-18 David Turner <david@freetype.org>
* src/psnames/pstables.h, src/tools/glnames.py: rewrote the "glnames.py"
script used to generate the "pstables.h" header file. The old one
contained a bug (yes !!) that made FreeType return incorrect glyph
names for certain glyphs..
* src/truetype/ttdriver.c: changing computation of pixel size from
character size to use rounding. This is an experiment to see if this
gives values similar to Windows for scaled ascent/descent/etc..
* src/base/ftcalc.c (FT_Div64by32): changed the implementation
slightly since the original code was mis-compiled on Mac machines
using the MPW C compiler..
* src/base/ftobjs.c (FT_Realloc): when a memory block was grown
through FT_Realloc, the new bytes were not set to 0, which created
some strange bugs in the Postscript hinter
* src/cid/cidgload.c: adding support to new postscript hinter
* include/freetype/internal/psglobal.h,
include/freetype/internal/pshints.h,
include/freetype/config/ftmodule.h,
src/pshinter/Jamfile,
src/pshinter/pshalgo.h,
src/pshinter/pshalgo1.h,
src/pshinter/pshalgo1.c,
src/pshinter/pshalgo2.h,
src/pshinter/pshalgo2.c,
src/pshinter/pshglob.h,
src/pshinter/pshglob.c,
src/pshinter/pshinter.c,
src/pshinter/pshmod.c,
src/pshinter/pshmod.h,
src/pshinter/pshrec.c,
src/pshinter/pshrec.h : Adding new postscript hinter module
* include/freetype/internal/ftobjs.h,
include/freetype/internal/internal.h,
include/freetype/internal/psaux.h,
include/freetype/internal/t1types.h,
src/psaux/psobjs.c,
src/psaux/psobjs.h,
src/psaux/t1decode.h,
src/psaux/t1decode.c,
src/type1/t1driver.c,
src/type1/t1gload.c,
src/type1/t1objs.c,
src/type1/t1objs.h : updates to use the new postscript hinter
* tests/Jamfile, tests/gview.c: Adding a new glyph hinting
viewer/debugger to the source tree. Note that you will _not_ be
able to compile it since it depends on an unavailable graphics
library named "Nirvana" to render vector images..
2001-10-17 David Turner <david@freetype.org>
* Version 2.0.5 released.
=========================
* include/freetype/freetype.h, include/internal/ftobjs.h,
src/base/ftobjs.c, src/sfnt/sfdriver.c, type1/t1driver.c,
cid/cidriver.c: Adding a new function named 'FT_Get_Postscript_Name' to
retrieve the Postscript name of a given font. Should work with all
formats except pure CFF/CEF fonts (this will be added soon).
* README, docs/CHANGES: updated for 2.0.5 release
2001-10-08 David Turner <david@freetype.org>
Fixed a bug in `glnames.py' that prevented it from generating
correct glyph names tables. This resulted in the unavailability of
certain glyphs like `Cacute', `cacute' and `lslash' in Unicode
charmaps, even if these were present in the font (causing problems
for Polish users).
* src/tools/glnames.py (mac_standard_names): Fixed.
(t1_standard_strings): Some fixes and renamed to ...
(sid_standard_names): This.
(t1_expert_encoding): Fixed.
(the_adobe_glyph_list): Renamed to ...
(adobe_glyph_names): This.
(the_adobe_glyphs): Renamed to ...
(adobe_glyph_values): This.
(dump_mac_indices, dump_glyph_list, dump_unicode_values, main):
Updated.
* src/psnames/pstables.h: Regenerated.
* src/psnames/psmodule.c (PS_Unicode_Value): Fix offset.
Fix return value.
Use `sid_standard_table' and `ps_names_to_unicode' instead of
`t1_standard_glyphs' and `names_to_unicode'.
(PS_Macintosh_Name): Use `ps_glyph_names' instead of
`standard_glyph_names'.
(PS_Standard_Strings): Use `sid_standard_names' instead of
`t1_standard_glyphs'.
* doc/BUGS, doc/TODO: New documents.
2001-10-07 Richard Barber <rich@solutionuk.com>
* src/cache/ftlru.c (FT_Lru_Lookup_Node): Fixed a bug that prevented
correct LRU behaviour.
2001-10-07 David Turner <david@freetype.org>
setjmp() and longjmp() are now used for rollback (i.e. when memory
pool overflow occurs).
Function names are now all uniformly prefixed with `gray_'.
* src/smooth/ftgrays.c: Include <setjmp.h>.
(ErrRaster_MemoryOverflow): New macro.
(TArea): New type to store area values in each cell (using `int' was
too small on 16-bit systems). <limits.h> is included to properly
get the needed data type.
(TCell, TRaster): Use it.
(TRaster): New element `jump_buffer'.
(gray_compute_cbox): Use `RAS_ARG' as the only parameter and get
`outline' from it.
(gray_record_cell): Use longjmp().
(gray_set_cell): Use gray_record_cell() for error handling.
(gray_render_line, gray_render_conic, gray_render_cubic): Simplify.
(gray_convert_glyph_inner): New function, using setjmp().
(gray_convert_glyph): Use it.
2001-10-07 David Turner <david@freetype.org>
Provide a public API to manage multiple size objects for a given
FT_Face in the new header file `ftsizes.h'.
* include/freetype/ftsizes.h: New header file,
* include/freetype/internal/ftobjs.h: Use it.
Remove declarations of FT_New_Size and FT_Done_Size (moved to
ftsizes.h).
* include/freetype/config/ftheader.h (FT_SIZES_H): New macro.
* src/base/ftobjs.c (FT_Activate_Size): New function.
* src/cache/ftcmanag.c: Include ftsizes.h.
(ftc_manager_init_size, ftc_manager_flush_size): Use
FT_Activate_Size.
2001-09-20 Detlef W