[FREETYPE]
authorAmine Khaldi <amine.khaldi@reactos.org>
Thu, 19 Sep 2013 23:11:29 +0000 (23:11 +0000)
committerAmine Khaldi <amine.khaldi@reactos.org>
Thu, 19 Sep 2013 23:11:29 +0000 (23:11 +0000)
* Sync to 2.5.0. Brought to you by zehnvor.
[FTFD]
* Add version information to build.

svn path=/trunk/; revision=60227

383 files changed:
reactos/lib/3rdparty/freetype/CMakeLists.txt
reactos/lib/3rdparty/freetype/ChangeLog
reactos/lib/3rdparty/freetype/ChangeLog.20 [deleted file]
reactos/lib/3rdparty/freetype/ChangeLog.21 [deleted file]
reactos/lib/3rdparty/freetype/ChangeLog.22 [deleted file]
reactos/lib/3rdparty/freetype/ChangeLog.23 [deleted file]
reactos/lib/3rdparty/freetype/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/Jamrules [deleted file]
reactos/lib/3rdparty/freetype/Makefile [deleted file]
reactos/lib/3rdparty/freetype/README
reactos/lib/3rdparty/freetype/README.ROS [deleted file]
reactos/lib/3rdparty/freetype/README.git [deleted file]
reactos/lib/3rdparty/freetype/autogen.sh
reactos/lib/3rdparty/freetype/configure
reactos/lib/3rdparty/freetype/devel/ftoption.h [deleted file]
reactos/lib/3rdparty/freetype/freetype.rc
reactos/lib/3rdparty/freetype/include/freetype/config/ftconfig.h
reactos/lib/3rdparty/freetype/include/freetype/config/ftheader.h
reactos/lib/3rdparty/freetype/include/freetype/config/ftoption.h
reactos/lib/3rdparty/freetype/include/freetype/config/ftstdlib.h
reactos/lib/3rdparty/freetype/include/freetype/freetype.h
reactos/lib/3rdparty/freetype/include/freetype/ftadvanc.h
reactos/lib/3rdparty/freetype/include/freetype/ftautoh.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/include/freetype/ftbbox.h
reactos/lib/3rdparty/freetype/include/freetype/ftbitmap.h
reactos/lib/3rdparty/freetype/include/freetype/ftbzip2.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/include/freetype/ftcache.h
reactos/lib/3rdparty/freetype/include/freetype/ftcffdrv.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/include/freetype/ftchapters.h
reactos/lib/3rdparty/freetype/include/freetype/fterrdef.h
reactos/lib/3rdparty/freetype/include/freetype/fterrors.h
reactos/lib/3rdparty/freetype/include/freetype/ftgasp.h
reactos/lib/3rdparty/freetype/include/freetype/ftglyph.h
reactos/lib/3rdparty/freetype/include/freetype/ftimage.h
reactos/lib/3rdparty/freetype/include/freetype/ftlcdfil.h
reactos/lib/3rdparty/freetype/include/freetype/ftmodapi.h
reactos/lib/3rdparty/freetype/include/freetype/ftmoderr.h
reactos/lib/3rdparty/freetype/include/freetype/ftoutln.h
reactos/lib/3rdparty/freetype/include/freetype/ftrender.h
reactos/lib/3rdparty/freetype/include/freetype/ftstroke.h
reactos/lib/3rdparty/freetype/include/freetype/ftsynth.h
reactos/lib/3rdparty/freetype/include/freetype/fttrigon.h
reactos/lib/3rdparty/freetype/include/freetype/ftttdrv.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/include/freetype/fttypes.h
reactos/lib/3rdparty/freetype/include/freetype/internal/autohint.h
reactos/lib/3rdparty/freetype/include/freetype/internal/ftcalc.h
reactos/lib/3rdparty/freetype/include/freetype/internal/ftdebug.h
reactos/lib/3rdparty/freetype/include/freetype/internal/ftdriver.h
reactos/lib/3rdparty/freetype/include/freetype/internal/ftmemory.h
reactos/lib/3rdparty/freetype/include/freetype/internal/ftobjs.h
reactos/lib/3rdparty/freetype/include/freetype/internal/ftpic.h
reactos/lib/3rdparty/freetype/include/freetype/internal/ftrfork.h
reactos/lib/3rdparty/freetype/include/freetype/internal/ftserv.h
reactos/lib/3rdparty/freetype/include/freetype/internal/ftstream.h
reactos/lib/3rdparty/freetype/include/freetype/internal/fttrace.h
reactos/lib/3rdparty/freetype/include/freetype/internal/ftvalid.h
reactos/lib/3rdparty/freetype/include/freetype/internal/internal.h
reactos/lib/3rdparty/freetype/include/freetype/internal/pcftypes.h [deleted file]
reactos/lib/3rdparty/freetype/include/freetype/internal/psaux.h
reactos/lib/3rdparty/freetype/include/freetype/internal/pshints.h
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svbdf.h
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svcid.h
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svgldict.h
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svmm.h
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svpostnm.h
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svprop.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svpscmap.h
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svpsinfo.h
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svsfnt.h
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svttcmap.h
reactos/lib/3rdparty/freetype/include/freetype/internal/services/svttglyf.h
reactos/lib/3rdparty/freetype/include/freetype/internal/sfnt.h
reactos/lib/3rdparty/freetype/include/freetype/internal/t1types.h
reactos/lib/3rdparty/freetype/include/freetype/internal/tttypes.h
reactos/lib/3rdparty/freetype/include/freetype/t1tables.h
reactos/lib/3rdparty/freetype/include/freetype/ttnameid.h
reactos/lib/3rdparty/freetype/include/freetype/tttables.h
reactos/lib/3rdparty/freetype/include/freetype/tttags.h
reactos/lib/3rdparty/freetype/modules.cfg
reactos/lib/3rdparty/freetype/objs/README [deleted file]
reactos/lib/3rdparty/freetype/src/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/autofit/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/autofit/afangles.c
reactos/lib/3rdparty/freetype/src/autofit/afcjk.c
reactos/lib/3rdparty/freetype/src/autofit/afcjk.h
reactos/lib/3rdparty/freetype/src/autofit/afdummy.c
reactos/lib/3rdparty/freetype/src/autofit/afdummy.h
reactos/lib/3rdparty/freetype/src/autofit/aferrors.h
reactos/lib/3rdparty/freetype/src/autofit/afglobal.c
reactos/lib/3rdparty/freetype/src/autofit/afglobal.h
reactos/lib/3rdparty/freetype/src/autofit/afhints.c
reactos/lib/3rdparty/freetype/src/autofit/afhints.h
reactos/lib/3rdparty/freetype/src/autofit/afindic.c
reactos/lib/3rdparty/freetype/src/autofit/afindic.h
reactos/lib/3rdparty/freetype/src/autofit/aflatin.c
reactos/lib/3rdparty/freetype/src/autofit/aflatin.h
reactos/lib/3rdparty/freetype/src/autofit/aflatin2.c
reactos/lib/3rdparty/freetype/src/autofit/aflatin2.h
reactos/lib/3rdparty/freetype/src/autofit/afloader.c
reactos/lib/3rdparty/freetype/src/autofit/afloader.h
reactos/lib/3rdparty/freetype/src/autofit/afmodule.c
reactos/lib/3rdparty/freetype/src/autofit/afmodule.h
reactos/lib/3rdparty/freetype/src/autofit/afpic.c
reactos/lib/3rdparty/freetype/src/autofit/afpic.h
reactos/lib/3rdparty/freetype/src/autofit/aftypes.h
reactos/lib/3rdparty/freetype/src/autofit/afwarp.c
reactos/lib/3rdparty/freetype/src/autofit/autofit.c
reactos/lib/3rdparty/freetype/src/autofit/rules.mk
reactos/lib/3rdparty/freetype/src/base/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/base/basepic.c
reactos/lib/3rdparty/freetype/src/base/basepic.h
reactos/lib/3rdparty/freetype/src/base/ftadvanc.c
reactos/lib/3rdparty/freetype/src/base/ftbase.c
reactos/lib/3rdparty/freetype/src/base/ftbase.h
reactos/lib/3rdparty/freetype/src/base/ftbbox.c
reactos/lib/3rdparty/freetype/src/base/ftbdf.c
reactos/lib/3rdparty/freetype/src/base/ftbitmap.c
reactos/lib/3rdparty/freetype/src/base/ftcalc.c
reactos/lib/3rdparty/freetype/src/base/ftcid.c
reactos/lib/3rdparty/freetype/src/base/ftdbgmem.c
reactos/lib/3rdparty/freetype/src/base/ftdebug.c
reactos/lib/3rdparty/freetype/src/base/ftgloadr.c
reactos/lib/3rdparty/freetype/src/base/ftglyph.c
reactos/lib/3rdparty/freetype/src/base/ftgxval.c
reactos/lib/3rdparty/freetype/src/base/ftinit.c
reactos/lib/3rdparty/freetype/src/base/ftlcdfil.c
reactos/lib/3rdparty/freetype/src/base/ftmac.c
reactos/lib/3rdparty/freetype/src/base/ftmm.c
reactos/lib/3rdparty/freetype/src/base/ftnames.c [deleted file]
reactos/lib/3rdparty/freetype/src/base/ftobjs.c
reactos/lib/3rdparty/freetype/src/base/ftotval.c
reactos/lib/3rdparty/freetype/src/base/ftoutln.c
reactos/lib/3rdparty/freetype/src/base/ftpatent.c
reactos/lib/3rdparty/freetype/src/base/ftpfr.c
reactos/lib/3rdparty/freetype/src/base/ftpic.c
reactos/lib/3rdparty/freetype/src/base/ftrfork.c
reactos/lib/3rdparty/freetype/src/base/ftsnames.c
reactos/lib/3rdparty/freetype/src/base/ftstream.c
reactos/lib/3rdparty/freetype/src/base/ftstroke.c
reactos/lib/3rdparty/freetype/src/base/ftsynth.c
reactos/lib/3rdparty/freetype/src/base/ftsystem.c
reactos/lib/3rdparty/freetype/src/base/fttrigon.c
reactos/lib/3rdparty/freetype/src/base/fttype1.c
reactos/lib/3rdparty/freetype/src/base/ftutil.c
reactos/lib/3rdparty/freetype/src/base/ftwinfnt.c
reactos/lib/3rdparty/freetype/src/base/md5.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/base/md5.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/base/rules.mk
reactos/lib/3rdparty/freetype/src/bdf/README
reactos/lib/3rdparty/freetype/src/bdf/bdf.h
reactos/lib/3rdparty/freetype/src/bdf/bdfdrivr.c
reactos/lib/3rdparty/freetype/src/bdf/bdfdrivr.h
reactos/lib/3rdparty/freetype/src/bdf/bdferror.h
reactos/lib/3rdparty/freetype/src/bdf/bdflib.c
reactos/lib/3rdparty/freetype/src/bzip2/Jamfile [moved from reactos/lib/3rdparty/freetype/src/lzw/Jamfile with 61% similarity]
reactos/lib/3rdparty/freetype/src/bzip2/ftbzip2.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/bzip2/rules.mk [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cache/ftcbasic.c
reactos/lib/3rdparty/freetype/src/cache/ftccache.c
reactos/lib/3rdparty/freetype/src/cache/ftccache.h
reactos/lib/3rdparty/freetype/src/cache/ftccback.h
reactos/lib/3rdparty/freetype/src/cache/ftccmap.c
reactos/lib/3rdparty/freetype/src/cache/ftcerror.h
reactos/lib/3rdparty/freetype/src/cache/ftcglyph.c
reactos/lib/3rdparty/freetype/src/cache/ftcglyph.h
reactos/lib/3rdparty/freetype/src/cache/ftcmanag.c
reactos/lib/3rdparty/freetype/src/cache/ftcmanag.h
reactos/lib/3rdparty/freetype/src/cache/ftcmru.c
reactos/lib/3rdparty/freetype/src/cache/ftcmru.h
reactos/lib/3rdparty/freetype/src/cache/ftcsbits.c
reactos/lib/3rdparty/freetype/src/cache/ftcsbits.h
reactos/lib/3rdparty/freetype/src/cff/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/cff/cf2arrst.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2arrst.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2blues.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2blues.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2error.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2error.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2fixed.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2font.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2font.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2ft.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2ft.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2glue.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2hints.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2hints.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2intrp.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2intrp.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2read.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2read.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2stack.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2stack.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cf2types.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/cff/cff.c
reactos/lib/3rdparty/freetype/src/cff/cffcmap.c
reactos/lib/3rdparty/freetype/src/cff/cffdrivr.c
reactos/lib/3rdparty/freetype/src/cff/cfferrs.h
reactos/lib/3rdparty/freetype/src/cff/cffgload.c
reactos/lib/3rdparty/freetype/src/cff/cffgload.h
reactos/lib/3rdparty/freetype/src/cff/cffload.c
reactos/lib/3rdparty/freetype/src/cff/cffload.h
reactos/lib/3rdparty/freetype/src/cff/cffobjs.c
reactos/lib/3rdparty/freetype/src/cff/cffobjs.h
reactos/lib/3rdparty/freetype/src/cff/cffparse.c
reactos/lib/3rdparty/freetype/src/cff/cffparse.h
reactos/lib/3rdparty/freetype/src/cff/cffpic.c
reactos/lib/3rdparty/freetype/src/cff/cffpic.h
reactos/lib/3rdparty/freetype/src/cff/cfftoken.h
reactos/lib/3rdparty/freetype/src/cff/cfftypes.h
reactos/lib/3rdparty/freetype/src/cff/rules.mk
reactos/lib/3rdparty/freetype/src/cid/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/cid/ciderrs.h
reactos/lib/3rdparty/freetype/src/cid/cidgload.c
reactos/lib/3rdparty/freetype/src/cid/cidload.c
reactos/lib/3rdparty/freetype/src/cid/cidobjs.c
reactos/lib/3rdparty/freetype/src/cid/cidparse.c
reactos/lib/3rdparty/freetype/src/cid/cidriver.c
reactos/lib/3rdparty/freetype/src/cid/cidriver.h
reactos/lib/3rdparty/freetype/src/gxvalid/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/gxvalid/gxvcommn.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvcommn.h
reactos/lib/3rdparty/freetype/src/gxvalid/gxverror.h
reactos/lib/3rdparty/freetype/src/gxvalid/gxvfeat.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvjust.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvkern.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmod.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmod.h
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmort.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmort0.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmort1.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmort2.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmort5.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmorx.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmorx0.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmorx1.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmorx2.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvmorx5.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvprop.c
reactos/lib/3rdparty/freetype/src/gxvalid/gxvtrak.c
reactos/lib/3rdparty/freetype/src/gzip/ftgzip.c
reactos/lib/3rdparty/freetype/src/lzw/ftlzw.c
reactos/lib/3rdparty/freetype/src/lzw/ftzopen.c
reactos/lib/3rdparty/freetype/src/otvalid/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/otvalid/otverror.h
reactos/lib/3rdparty/freetype/src/otvalid/otvmod.c
reactos/lib/3rdparty/freetype/src/otvalid/otvmod.h
reactos/lib/3rdparty/freetype/src/pcf/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/pcf/README
reactos/lib/3rdparty/freetype/src/pcf/pcf.h
reactos/lib/3rdparty/freetype/src/pcf/pcfdrivr.c
reactos/lib/3rdparty/freetype/src/pcf/pcfdrivr.h
reactos/lib/3rdparty/freetype/src/pcf/pcferror.h
reactos/lib/3rdparty/freetype/src/pcf/pcfread.c
reactos/lib/3rdparty/freetype/src/pfr/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/pfr/pfrcmap.c
reactos/lib/3rdparty/freetype/src/pfr/pfrdrivr.c
reactos/lib/3rdparty/freetype/src/pfr/pfrdrivr.h
reactos/lib/3rdparty/freetype/src/pfr/pfrerror.h
reactos/lib/3rdparty/freetype/src/pfr/pfrgload.c
reactos/lib/3rdparty/freetype/src/pfr/pfrload.c
reactos/lib/3rdparty/freetype/src/pfr/pfrobjs.c
reactos/lib/3rdparty/freetype/src/pfr/pfrsbit.c
reactos/lib/3rdparty/freetype/src/psaux/afmparse.c
reactos/lib/3rdparty/freetype/src/psaux/psauxerr.h
reactos/lib/3rdparty/freetype/src/psaux/psauxmod.c
reactos/lib/3rdparty/freetype/src/psaux/psauxmod.h
reactos/lib/3rdparty/freetype/src/psaux/psconv.c
reactos/lib/3rdparty/freetype/src/psaux/psconv.h
reactos/lib/3rdparty/freetype/src/psaux/psobjs.c
reactos/lib/3rdparty/freetype/src/psaux/t1cmap.c
reactos/lib/3rdparty/freetype/src/psaux/t1decode.c
reactos/lib/3rdparty/freetype/src/pshinter/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/pshinter/pshalgo.c
reactos/lib/3rdparty/freetype/src/pshinter/pshalgo.h
reactos/lib/3rdparty/freetype/src/pshinter/pshglob.c
reactos/lib/3rdparty/freetype/src/pshinter/pshmod.c
reactos/lib/3rdparty/freetype/src/pshinter/pshnterr.h
reactos/lib/3rdparty/freetype/src/pshinter/pshpic.c
reactos/lib/3rdparty/freetype/src/pshinter/pshpic.h
reactos/lib/3rdparty/freetype/src/pshinter/pshrec.c
reactos/lib/3rdparty/freetype/src/pshinter/rules.mk
reactos/lib/3rdparty/freetype/src/psnames/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/psnames/psmodule.c
reactos/lib/3rdparty/freetype/src/psnames/psnamerr.h
reactos/lib/3rdparty/freetype/src/psnames/pspic.c
reactos/lib/3rdparty/freetype/src/psnames/pspic.h
reactos/lib/3rdparty/freetype/src/psnames/pstables.h
reactos/lib/3rdparty/freetype/src/psnames/rules.mk
reactos/lib/3rdparty/freetype/src/raster/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/raster/ftmisc.h
reactos/lib/3rdparty/freetype/src/raster/ftraster.c
reactos/lib/3rdparty/freetype/src/raster/ftrend1.c
reactos/lib/3rdparty/freetype/src/raster/rasterrs.h
reactos/lib/3rdparty/freetype/src/raster/rastpic.c
reactos/lib/3rdparty/freetype/src/raster/rastpic.h
reactos/lib/3rdparty/freetype/src/raster/rules.mk
reactos/lib/3rdparty/freetype/src/sfnt/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/sfnt/pngshim.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/sfnt/pngshim.h [moved from reactos/lib/3rdparty/freetype/devel/ft2build.h with 50% similarity]
reactos/lib/3rdparty/freetype/src/sfnt/rules.mk
reactos/lib/3rdparty/freetype/src/sfnt/sfdriver.c
reactos/lib/3rdparty/freetype/src/sfnt/sferrors.h
reactos/lib/3rdparty/freetype/src/sfnt/sfnt.c
reactos/lib/3rdparty/freetype/src/sfnt/sfntpic.c
reactos/lib/3rdparty/freetype/src/sfnt/sfntpic.h
reactos/lib/3rdparty/freetype/src/sfnt/sfobjs.c
reactos/lib/3rdparty/freetype/src/sfnt/ttbdf.c
reactos/lib/3rdparty/freetype/src/sfnt/ttcmap.c
reactos/lib/3rdparty/freetype/src/sfnt/ttcmap.h
reactos/lib/3rdparty/freetype/src/sfnt/ttcmapc.h
reactos/lib/3rdparty/freetype/src/sfnt/ttkern.c
reactos/lib/3rdparty/freetype/src/sfnt/ttload.c
reactos/lib/3rdparty/freetype/src/sfnt/ttmtx.c
reactos/lib/3rdparty/freetype/src/sfnt/ttpost.c
reactos/lib/3rdparty/freetype/src/sfnt/ttsbit.c
reactos/lib/3rdparty/freetype/src/sfnt/ttsbit.h
reactos/lib/3rdparty/freetype/src/sfnt/ttsbit0.c [deleted file]
reactos/lib/3rdparty/freetype/src/smooth/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/smooth/ftgrays.c
reactos/lib/3rdparty/freetype/src/smooth/ftsmerrs.h
reactos/lib/3rdparty/freetype/src/smooth/ftsmooth.c
reactos/lib/3rdparty/freetype/src/smooth/ftspic.c
reactos/lib/3rdparty/freetype/src/smooth/ftspic.h
reactos/lib/3rdparty/freetype/src/smooth/rules.mk
reactos/lib/3rdparty/freetype/src/tools/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/tools/apinames.c
reactos/lib/3rdparty/freetype/src/tools/cordic.py
reactos/lib/3rdparty/freetype/src/tools/docmaker/content.py
reactos/lib/3rdparty/freetype/src/tools/docmaker/sources.py
reactos/lib/3rdparty/freetype/src/tools/docmaker/tohtml.py
reactos/lib/3rdparty/freetype/src/tools/ftrandom/README
reactos/lib/3rdparty/freetype/src/tools/ftrandom/ftrandom.c
reactos/lib/3rdparty/freetype/src/tools/glnames.py
reactos/lib/3rdparty/freetype/src/tools/test_afm.c
reactos/lib/3rdparty/freetype/src/tools/test_bbox.c
reactos/lib/3rdparty/freetype/src/tools/test_trig.c
reactos/lib/3rdparty/freetype/src/truetype/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/truetype/rules.mk
reactos/lib/3rdparty/freetype/src/truetype/truetype.c
reactos/lib/3rdparty/freetype/src/truetype/ttdriver.c
reactos/lib/3rdparty/freetype/src/truetype/tterrors.h
reactos/lib/3rdparty/freetype/src/truetype/ttgload.c
reactos/lib/3rdparty/freetype/src/truetype/ttgload.c.old [deleted file]
reactos/lib/3rdparty/freetype/src/truetype/ttgload.h
reactos/lib/3rdparty/freetype/src/truetype/ttgxvar.c
reactos/lib/3rdparty/freetype/src/truetype/ttinterp.c
reactos/lib/3rdparty/freetype/src/truetype/ttinterp.h
reactos/lib/3rdparty/freetype/src/truetype/ttobjs.c
reactos/lib/3rdparty/freetype/src/truetype/ttobjs.h
reactos/lib/3rdparty/freetype/src/truetype/ttpic.c
reactos/lib/3rdparty/freetype/src/truetype/ttpic.h
reactos/lib/3rdparty/freetype/src/truetype/ttpload.c
reactos/lib/3rdparty/freetype/src/truetype/ttsubpix.c [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/truetype/ttsubpix.h [new file with mode: 0644]
reactos/lib/3rdparty/freetype/src/type1/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/type1/t1afm.c
reactos/lib/3rdparty/freetype/src/type1/t1driver.c
reactos/lib/3rdparty/freetype/src/type1/t1driver.h
reactos/lib/3rdparty/freetype/src/type1/t1errors.h
reactos/lib/3rdparty/freetype/src/type1/t1gload.c
reactos/lib/3rdparty/freetype/src/type1/t1gload.h
reactos/lib/3rdparty/freetype/src/type1/t1load.c
reactos/lib/3rdparty/freetype/src/type1/t1objs.c
reactos/lib/3rdparty/freetype/src/type1/t1objs.h
reactos/lib/3rdparty/freetype/src/type1/t1parse.c
reactos/lib/3rdparty/freetype/src/type1/t1tokens.h
reactos/lib/3rdparty/freetype/src/type42/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/type42/t42drivr.c
reactos/lib/3rdparty/freetype/src/type42/t42drivr.h
reactos/lib/3rdparty/freetype/src/type42/t42error.h
reactos/lib/3rdparty/freetype/src/type42/t42objs.c
reactos/lib/3rdparty/freetype/src/type42/t42objs.h
reactos/lib/3rdparty/freetype/src/type42/t42parse.c
reactos/lib/3rdparty/freetype/src/winfonts/Jamfile [deleted file]
reactos/lib/3rdparty/freetype/src/winfonts/fnterrs.h
reactos/lib/3rdparty/freetype/src/winfonts/winfnt.c
reactos/lib/3rdparty/freetype/src/winfonts/winfnt.h
reactos/lib/3rdparty/freetype/version.sed [deleted file]
reactos/media/doc/3rd Party Files.txt
reactos/win32ss/drivers/font/ftfd/CMakeLists.txt
reactos/win32ss/drivers/font/ftfd/freetype.def
reactos/win32ss/drivers/font/ftfd/freetype.rc
reactos/win32ss/drivers/font/ftfd/ftfd.spec

index c14870d..f4389b1 100644 (file)
@@ -28,6 +28,7 @@ list(APPEND SOURCE
   src/base/ftwinfnt.c
   src/base/ftxf86.c
   src/bdf/bdf.c
+  src/bzip2/ftbzip2.c
   src/cache/ftcache.c
   src/cff/cff.c
   src/cid/type1cid.c
index b7aea52..5cda57a 100644 (file)
+2013-06-19  Werner Lemberg  <wl@gnu.org>
+
+       * Version 2.5.0.1 released.
+       ===========================
+
+
+       Tag sources with `VER-2-5-0-1'.
+
+       * include/freetype/config/ftoption.h: Undefine
+       CFF_CONFIG_OPTION_OLD_ENGINE.
+       * devel/ftoption.h: Define CFF_CONFIG_OPTION_OLD_ENGINE.
+
+2013-06-19  Werner Lemberg  <wl@gnu.org>
+
+       * builds/unix/install.mk (install): Don't create `cache' directory.
+
+       Found by Peter Breitenlohner <peb@mppmu.mpg.de>.
+
+2013-06-19  Werner Lemberg  <wl@gnu.org>
+
+       * Version 2.5.0 released.
+       =========================
+
+
+       Tag sources with `VER-2-5-0'.
+
+       * docs/VERSION.DLL: Update documentation and bump version number to
+       2.5.0.
+
+       * README, Jamfile (RefDoc),
+       builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
+       builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
+       builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
+       builds/win32/visualc/freetype.dsp,
+       builds/win32/visualc/freetype.vcproj,
+       builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
+       builds/win32/visualce/freetype.vcproj,
+       builds/win32/visualce/index.html,
+       builds/wince/vc2005-ce/freetype.vcproj,
+       builds/wince/vc2005-ce/index.html,
+       builds/wince/vc2008-ce/freetype.vcproj,
+       builds/wince/vc2008-ce/index.html: s/2.4.12/2.5.0/, s/2412/250/.
+
+       * include/freetype/freetype.h (FREETYPE_MINOR): Set to 5.
+       (FREETYPE_PATCH): Set to 0.
+
+       * builds/unix/configure.raw (version_info): Set to 16:2:10.
+
+       * src/base/ftobjs.c (FT_Open_Face): Pacify compiler.
+       * src/truetype/ttinterp.c (Ins_MSIRP, Ins_MIRP): Ditto.
+
+2013-06-18  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #39269.
+
+       * src/base/ftgloadr.c (FT_GlyphLoader_CheckPoints): Free memory in
+       case of reacollocation failures.
+
+2013-06-18  Andrew Church  <achurch+savannah@achurch.org>
+
+       Fix Savannah bug #39266.
+
+       If memory allocations fail at certain points while opening a font,
+       FreeType can either crash due to a NULL dereference or leak memory.
+
+       * include/freetype/internal/ftobjs.c (FT_Face_InternalRec,
+       FT_LibraryRec): Make `refcount' a signed integer.  If, for example,
+       FT_Open_Face() fails in a memory allocation before the face's
+       reference count is set to 1, a subsequent `FT_Done_Library' call
+       would otherwise loop over `FT_Done_Face' 2^32 times before freeing
+       the face.
+
+       * src/base/ftobjs.c (open_face): Initialize `stream' and friends
+       earlier.
+       (FT_Open_Face) <Fail>: Behave correctly if `node' is NULL.
+       (FT_Destroy_Module) <Fail>: Check that `renderer_clazz' is valid.
+
+2013-06-14  Werner Lemberg  <wl@gnu.org>
+
+       * src/smooth/ftgrays.c One final pragma to silence 64-bit MSVC.
+
+2013-06-06  Dave Arnold  <darnold@adobe.com>
+           Werner Lemberg  <wl@gnu.org>
+
+       [cff] Add code to Adobe's engine to handle ppem > 2000.
+
+       * src/cff/cffgload.c (cff_slot_load): If we get
+       FT_Err_Glyph_Too_Big, retry unhinted and scale up later on.
+
+2013-06-12  Werner Lemberg  <wl@gnu.org>
+
+       Another try on pragmas.
+
+       * include/freetype/internal/ftdebug.h: Move pragmas to...
+       * include/freetype/internal/internal.h: ... this file since it gets
+       included by all source files.
+       * include/freetype/internal/ftserv.h: Remove pragma which has no
+       effect.
+
+2013-06-12  Werner Lemberg  <wl@gnu.org>
+
+       * include/freetype/internal/ftdebug.h: Disable MSVC warning C4127.
+
+       This partially undoes commit 3f6e0e0c.
+
+2013-06-12  Werner Lemberg  <wl@gnu.org>
+
+       More compiler warning fixes.
+
+       */*: Use cast to `FT_Bool' (or `Bool') where appropriate.
+
+2013-06-10  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Improve handling of broken sbit advance widths.
+
+       * src/truetype/ttgload.c (TT_Load_Glyph): Use the glyph's (scaled)
+       `linearHoriAdvance' if the sbit's `horiAdvance' value is zero.
+
+       Cf. font `Fixedsys Excelsior' v3.01 (FSEX300.ttf), glyph A, 16ppem.
+
+2013-06-10  Werner Lemberg  <wl@gnu.org>
+
+       [sfnt] Improve embedded bitmap tracing.
+
+       * src/base/ftobjs.c (FT_Request_Size): Move trace message regarding
+       bitmap strike match to...
+       (FT_Match_Size): This function.
+
+       * src/sfnt/ttsbit.c (tt_sbit_decoder_load_metrics,
+       tt_sbit_decoder_load_byte_aligned, tt_sbit_decoder_load_bit_aligned,
+       tt_sbit_decoder_load_compound, tt_sbit_decoder_load_png,
+       tt_sbit_decoder_load_image): Decorate with tracing messages.
+
+2013-06-10  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #39160.
+
+       * src/truetype/ttinterp.c (Ins_SDPVTL): Set projection vector too
+       for the degenerate case.
+
+2013-06-09  David Turner  <digit@google.com>
+
+       * src/cache/ftcmanag.c (FTC_Manager_Reset): Add missing cache flush.
+
+       This code, present since eight(!) years in the unused `CACHE'
+       branch, has been forgotten to apply to the master branch.  It's
+       really amazing that noone has ever complained since
+       `FTC_Manager_Reset' is pretty useless without flushing the cache.
+
+2013-06-07  Werner Lemberg  <wl@gnu.org>
+
+       Add and improve pragmas for MSVC compiler.
+
+       * include/freetype/internal/ftdebug.h: Remove pragmas.
+       * include/freetype/internal/ftserv.h: Use push and pop for pragmas.
+       * include/freetype/internal/ftvalid.h: Handle warning C4324.
+       * src/base/ftobjs.c: Use push and pop for pragmas.
+       * src/gzip/ftgzip.c: Handle warning C4244.
+
+2013-06-07  Werner Lemberg  <wl@gnu.org>
+
+       [cff] s/cf2_getGlyphWidth/cf2_getGlyphOutline/.
+
+       * src/cff/cf2font.c, src/cff/cf2font.h, src/cff/cf2ft.c: Do it.
+
+2013-06-06  Dave Arnold  <darnold@adobe.com>
+
+       [cff] Add early exit feature for width-only calls.
+
+       This is for `FT_Get_Advance'.
+
+       There are 7 places where the spec says the width can be defined:
+
+         hstem/hstemhm
+         vstem/vstemhm
+         cntrmask/hintmask
+         hmoveto
+         vmoveto
+         rmoveto
+         endchar
+
+       * src/cff/cf2intrp.c (cf2_doStems): Exit early for width-only calls,
+       if possible.
+
+       (cf2_interpT2CharString) <cf2_cmdHSTEM>, <cf2_cmdVSTEM>,
+       <cf2_cmdVMOVETO>, <cf2_cmdENDCHAR>, <cf2_cmdHINTMASK>,
+       <cf2_cmdRMOVETO>, <cf2_cmdHMOVETO>: Exit early for width-only calls.
+
+2013-06-06  Werner Lemberg  <wl@gnu.org>
+
+       Next round of compiler fixes.
+
+       * builds/win32/ftdebug.c, builds/wince/ftdebug.c (ft_debug_init):
+       Add proper cast.
+
+       * include/freetype/internal/ftserv.h (FT_SERVICE_UNAVAILABLE): Fix
+       cast.
+       * include/freetype/internal/ftstream.h: Decorate stream and frame
+       macros with `FT_Long' and `FT_ULong' as appropriate.
+
+       * src/base/ftrfork.c (raccess_guess_darwin_hfsplus,
+       raccess_guess_darwin_newvfs): Use cast.
+
+       * src/bdf/bdflib.c (_bdf_set_default_spacing): Use cast.
+
+       * src/cache/ftcmanag.c (FTC_Manager_Check): Fix cast.
+       * src/cache/ftcmanag.h (FTC_ManagerRec): Ditto.
+
+       * src/cff/cf2arrst.c (cf2_arrstack_setNum_Elements): Use cast.
+       * src/cff/cf2ft.c (cf2_freeSeacComponent): Ditto.
+       * src/cff/cffobjs.c (remove_subset_prefix, remove_style): Ditto.
+
+       * src/cid/cidparse.c (cid_parser_new): Use cast.
+
+       * src/pcf/pcfdrivr.c (PCF_Glyph_Load): Use cast.
+
+       * src/psaux/psobjs.c (reallocate_t1_table): Fix argument type.
+
+       * src/raster/ftraster.c (ft_black_reset): Use cast.
+
+       * src/truetype/ttgxvar.c (FT_Stream_FTell): Use cast.
+       (ALL_POINTS): Fix cast.
+
+       * src/type1/t1driver.c (t1_ps_get_font_value): Add casts.
+       * src/type1/t1parse.c (T1_Get_Private_Dict): Add cast.
+
+2013-06-05  Dave Arnold  <darnold@adobe.com>
+
+       Fix more MSVC Win32 compiler warnings.
+
+       * src/base/ftobjs.c: Fix typo in MS pragma.
+
+       * src/base/bdflib.c (_bdf_set_default_spacing, _bdf_add_property):
+       `lineno' is only used in debug mode.
+
+       * src/cff/cf2ft.c (cf2_builder_moveTo): `params' is only used in
+       debug mode.
+
+2013-06-05  Werner Lemberg  <wl@gnu.org>
+
+       Fix compiler warnings.
+
+       * include/freetype/internal/ftmemory.h: Decorate memory allocation
+       macros with `FT_Long' where appropriate.
+       Remove duplicate of FT_MEM_QRENEW_ARRAY definition.
+
+       * src/base/ftbitmap.c (ft_gray_for_premultiplied_srgb_bgra): Use
+       cast.
+
+       * src/base/ftobjs.c: Add warning disabling pragma for MSVC while
+       including `md5.c'.
+
+       * src/cff/cf2intrp.c (cf2_interpT2CharString) <cf2_cmdESC>: Add
+       cast.
+
+       * src/sfnt/ttsbit.c (tt_sbit_decoder_load_compound): Fix casts.
+       (tt_sbit_decoder_load_bitmap): Beautification.
+
+       * src/smooth/ftsmooth.c (ft_smooth_render_generic): Initialize
+       variables (earlier).
+
+       * src/truetype/ttgload.c (TT_Process_Simple_Glyph): Pacify compiler.
+
+       * src/truetype/ttgxvar.c (TT_Get_MM_Var): Use unsigned constants
+       where appropriate.
+
+       * src/type1/t1load.c (T1_Get_MM_Var): Ditto.
+
+2013-06-04  Werner Lemberg  <wl@gnu.org>
+
+       * src/cff/cf2font.c (cf2_getGlyphWidth): Initialize `advWidth'.
+
+       Problem reported by Ingmar Sittl <ingmar.sittl@elektrobit.com>.
+
+2013-06-04  Werner Lemberg  <wl@gnu.org>
+
+       Apply fixes for cppcheck nitpicks.
+
+         http://cppcheck.sourceforge.net/
+
+       The call was (from the top-level of the FreeType tree):
+
+         cppcheck --force \
+                  --enable=all \
+                  -I include \
+                  -I include/freetype/ \
+                  -I include/freetype/config/ \
+                  -I include/freetype/internal/ \
+                  . &> cppcheck.log
+
+       Note that the current version heavily chokes on FreeType, delivering
+       many wrong results.  I will report those issues to the cppcheck team
+       so that a newer version gives improved results hopefully.
+
+       */* Improve variable scopes.
+       */* Remove redundant initializations which get overwritten.
+
+       * src/base/ftmac.c ,builds/mac/ftmac.c (count_faces_scalable):
+       Remove unused variable.
+
+       * src/base/ftdbgmem.c (ft_mem_table_destroy): `table' can't be zero.
+
+       * src/gxvalid/gxvkern.c (gxv_kern_subtable_fmt1_entry_validate):
+       Remove functionless code.
+
+       * src/tools/ftrandom.c (main): Fix memory leak.
+
+2013-06-03  Werner Lemberg  <wl@gnu.org>
+
+       Add CFF_CONFIG_OPTION_OLD_ENGINE configuration option.
+
+       This controls whether the old FreeType CFF engine gets compiled into
+       FreeType.  It is now disabled by default.
+
+       * devel/ftoption.h, include/freetype/config/ftoption.h
+       (CFF_CONFIG_OPTION_OLD_ENGINE): New macro.
+
+       * src/cff/cffdrivr.c (cff_property_set), src/cff/cffgload.c
+       (CFF_Operator, cff_argument_counts, cff_builder_add_point,
+       cff_operator_seac, cff_decoder_parse_charstrings, cff_slot_load),
+       src/cff/cffgload.h, src/cff/cffobjs.c (cff_driver_init): Use
+       CFF_CONFIG_OPTION_OLD_ENGINE to guard the affected code.
+
+       * docs/CHANGES: Updated.
+
+2013-06-02  Werner Lemberg  <wl@gnu.org>
+
+       Fix PNG library handling.
+
+       * builds/unix/configure.raw: Don't use LIBPNG_LIBS but
+       LIBPNG_LDFLAGS.
+
+2013-05-23  Behdad Esfahbod  <behdad@google.com>
+
+       Add support for color embedded bitmaps (eg. color emoji).
+
+       A new load flag, FT_LOAD_COLOR, makes FreeType load color
+       embedded-bitmaps, following this draft specification
+
+         https://color-emoji.googlecode.com/git/specification/v1.html
+
+       which defines two new SFNT tables, `CBDT' and `CBLC' (named and
+       modeled after `EBDT' and `EBLC', respectively).  The color bitmaps
+       are stored in the new FT_PIXEL_MODE_BGRA format to represent BGRA
+       pre-multiplied sRGB images.  If PNG support is available, PNG color
+       images as defined in the same proposed specification are supported
+       also.
+
+       Note that color bitmaps are converted to grayscale if client didn't
+       ask for color.
+
+       * builds/unix/configure.raw: Search for libpng.
+       Add `--without-png' option.
+
+       * devel/ftoption.h, include/freetype/config/ftoption.h
+       (FT_CONFIG_OPTION_USE_PNG): New macro.
+
+       * include/freetype/freetype.h (FT_LOAD_COLOR): New load flag.
+
+       * include/freetype/ftimage.h (FT_Pixel_Mode): Add
+       `FT_PIXEL_MODE_BGRA'.
+
+       * include/freetype/tttags.h (TTAG_CBDT, TTAG_CBLC): New tags.
+
+       * src/base/ftbitmap.c (FT_Bitmap_Embolden): Updated.
+       (ft_gray_for_premultiplied_srgb_bgra): New function.
+       (FT_Bitmap_Convert): Handle FT_PIXEL_MODE_BGRA.
+
+       * src/sfnt/pngshim.c, src/sfnt/pngshim.h: New files.
+
+       * src/sfnt/sfnt.c: Include `pngshim.c'.
+
+       * src/sfnt/ttsbit.c: Include FT_BITMAP_H and `pngshim.h'
+       (tt_face_load_eblc): Load `CBLC'.
+       (tt_sbit_decoder_init): Load `CBDT'.
+       (tt_sbit_decoder_alloc_bitmap): Pass load flags to select between
+       color and grayscale bitmaps.
+       Set `num_grays'.  This is used by `ftview' to choose the blending
+       algorithm.
+       (tt_sbit_decoder_load_byte_aligned,
+       tt_sbit_decoder_load_bit_aligned, tt_sbit_decoder_load_compound,
+       tt_sbit_decoder_load_image): Pass load flag.
+       s/write/pwrite/.
+       Don't call `tt_sbit_decoder_alloc_bitmap'.
+       Updated.
+       (tt_sbit_decoder_load_png) [FT_CONFIG_OPTION_USE_PNG]: New function.
+       (tt_sbit_decoder_load_bitmap): Pass load flag.
+       Handle new glyph formats 17, 18, and 19.
+       Call `tt_sbit_decoder_alloc_bitmap'.
+       Flatten color bitmaps if necessary.
+       (tt_face_load_sbit_image): Updated.
+
+       * src/sfnt/rules.mk (SFNT_DRV_SRC): Add `pngshim.c'.
+
+       * docs/CHANGES: Updated.
+
+2013-05-24  Guenter  <info@gknw.net>
+
+       Apply Savannah patch #8055.
+
+       Make `apinames' create an import file for NetWare.
+
+       * src/tools/apinames.c (PROGRAM_VERSION): Set to 0.2.
+       (OutputFormat): Add `OUTPUT_NETWARE_IMP'.
+       (names_dump): Handle it.
+       (usage): Updated.
+       (main): Handle new command line flag `-wN'.
+
+2013-05-23  Behdad Esfahbod  <behdad@behdad.org>
+
+       Compilation fix.
+
+       * src/truetype/ttinterp.c (TT_RunIns)
+       [!TT_CONFIG_OPTION_SUBPIXEL_HINTING]: Make it work.
+
+2013-05-22  Infinality  <infinality@infinality.net>
+
+       [truetype] Formatting and an additional subpixel tweak.
+
+       * src/truetype/ttinterp.c (Ins_SHPIX): Formatting fix.
+       * src/truetype/ttsubpix.c (SKIP_NONPIXEL_Y_MOVES_Rules):
+       Revert previous modification for Verdana clones.
+
+2013-05-22  Infinality  <infinality@infinality.net>
+
+       [truetype] Adjust subpixel zp2 moves and tweak rules.
+
+       These modifications fix thin diagonal stems in some legacy fonts.
+
+       * src/truetype/ttinterp.c (Direct_Move_X): Remove unused macro.
+       (Move_Zp2_Point): Don't always disable x moves for subpixel rendering.
+       (Ins_SHP): Disable x moves here for subpixel rendering.
+       (Ins_SHPIX): Only disable x moves in compatibility mode.
+       Split out zp2 move reversals and reorder conditional respectively.
+
+       * src/truetype/ttsubpix.c (SKIP_NONPIXEL_Y_MOVES_Rules): Fix oversight.
+       Only adjust Verdana clones for 17 ppem.
+       (SKIP_NONPIXEL_Y_MOVES_Rules_Exceptions): Add Courier New.
+       (ALWAYS_SKIP_DELTAP_Rules): Found additional cases for Arial `s'.
+
+2013-05-20  Infinality  <infinality@infinality.net>
+
+       [truetype] Simplify and improve subpixel function detection.
+
+       Some small enhancements have allowed the removal of many macros and
+       the simplification of existing rules in `ttsubpix.c'.
+
+       * src/truetype/ttsubpix.h (SPH_TWEAK_ALLOW_X_DMOVEX,
+       SPH_TWEAK_ALLOW_X_MOVE_ZP2,
+       SPH_TWEAK_DELTAP_SKIP_EXAGGERATED_VALUES,
+       SPH_TWEAK_SKIP_INLINE_DELTAS, SPH_TWEAK_MIRP_CVT_ZERO): Removed.
+       (SPH_TWEAK_SKIP_NONPIXEL_Y_MOVES_DELTAP): New rule macro.
+
+       * src/truetype/ttsubpix.c: Updated affected rules.
+
+       * src/truetype/ttinterp.c (Direct_Move_X): Updated.
+       (INS_FDEF): Add additional function detection.
+       (INS_ENDF): Set runtime flag.
+       (Ins_CALL): Skip the call under certain conditions.
+       Remove bad code.
+       (Ins_LOOPCALL): Skip the call under certain conditions.
+       Remove bad code.
+       (Move_Zp2_Point): Updated.
+       (Ins_SHPIX): Updated.
+       Skip the move under some situations.
+       (Ins_MIAP): Improve conditions.
+       (Ins_MIRP): Updated.
+       (Ins_DELTAP): Skip move under certain conditions.
+       Simplify conditions.
+       (TT_RunIns): Updated.
+       Add code to handle new function detection.
+       Trace messages.
+
+2013-05-17  Werner Lemberg  <wl@gnu.org>
+
+       Update more FT_Err_XXX macros using FT_ERR and FT_THROW;
+
+       * builds/amiga/src/base/ftsystem.c, builds/mac/ftmac.c,
+       builds/unix/ftsystem.c, builds/vms/ftsystem.c: Do it.
+
+2013-05-15  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Add `interpreter-version' property.
+
+       This makes the option TT_CONFIG_OPTION_SUBPIXEL_HINTING controllable
+       at runtime.
+
+       * include/freetype/ftttdrv.h: New file.
+
+       * include/freetype/config/ftheader.h (FT_TRUETYPE_DRIVER_H): New
+       macro.
+
+       * src/truetype/ttdriver.c: Include FT_TRUETYPE_DRIVER_H.
+       (tt_property_set, tt_property_get): Fill templates.
+
+       * src/truetype/ttobjs.h (TT_DriverRec): Add `interpreter_version'
+       member.
+       Remove unused `extension_component' member.
+
+       * src/truetype/ttgload.c: Include FT_TRUETYPE_DRIVER_H.
+       (tt_get_metrics, TT_Hint_Glyph, TT_Process_Simple_Glyph,
+       compute_glyph_metrics, tt_loader_init): Use `interpreter_version'.
+
+       * src/truetype/ttinterp.c: Include FT_TRUETYPE_DRIVER_H.
+       (SUBPIXEL_HINTING): New macro to check `interpreter_version' flag.
+       Update all affected functions to use it.
+       Use TT_INTERPRETER_VERSION_XXX where appropriate.
+
+       * src/truetype/ttobjs.c: Include FT_TRUETYPE_DRIVER_H.
+       (tt_driver_init): Initialize `interpreter_version'.
+
+       * src/truetype/ttsubpix.c: Include FT_TRUETYPE_DRIVER_H.
+       Use TT_INTERPRETER_VERSION_XXX where appropriate.
+
+2013-05-13  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Avoid empty source file.
+
+       * src/truetype/ttsubpix.c [!TT_CONFIG_OPTION_SUBPIXEL_HINTING]:
+       Provide dummy typedef.
+
+2013-05-13  Werner Lemberg  <wl@gnu.org>
+
+       * src/cff/cf2font.c (cf2_getGlyphWidth): Fix uninitialized variable.
+
+       Fix suggested by Vaibhav Nagarnaik <vnagarnaik@gmail.com>.
+
+2013-05-13  Brian Nixon  <bnixon@yahoo.com>
+
+       Fix Savannah bug #38970.
+
+       * src/base/ftdebug.c, builds/win32/ftdebug.c,
+       builds/wince/ftdebug.c, builds/amiga/src/base/ftdebug.c
+       (ft_debug_init): Don't read past the environment variable FT2_DEBUG.
+
+2013-05-12  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Add framework for TrueType properties.
+
+       * src/truetype/ttdrivr.c: Include FT_SERVICE_PROPERTIES_H.
+       (tt_property_set, tt_property_get): New functions, still empty.
+       Define `tt_service_properties' service.
+       Update `tt_services'.
+
+       * src/truetype/ttpic.h: Include FT_SERVICE_PROPERTIES_H.
+       (TT_SERVICE_PROPERTIES_GET): New macro.
+       (TTModulePIC): Add `tt_service_properties'.
+
+2013-05-12  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #38967.
+
+       * src/base/ftcalc.c (FT_DivFix) [FT_LONG64]: Fix cast.
+
+2013-05-12  Werner Lemberg  <wl@gnu.org>
+
+       Introduce unsigned 64bit type (if available).
+
+       * include/freetype/config/ftconfig.h: Define FT_UINT64 if available.
+       [FT_LONG64]: Provide FT_UInt64.
+
+       * builds/unix/ftconfig.in: Synchronized.
+
+2013-05-12  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #38968.
+
+       * include/freetype/ftmodapi.h: Add `FT_EXPORT' to
+       FT_Property_{Set,Get}.
+       * src/base/ftobjs.c: Add `FT_EXPORT_DEF' to
+       FT_Property_{Set,Get}.
+
+2013-05-10  Werner Lemberg  <wl@gnu.org>
+
+       [sfnt] Clean up bitmap code.
+
+       * src/sfnt/ttsbit.c: Deleted.
+       * src/sfnt/ttsbit0.c: Renamed to `ttsbit.c'. 
+       * rules.mk (SFNT_DRV_H): Updated.
+
+2013-05-10  Werner Lemberg  <wl@gnu.org>
+
+       */* [FT_CONFIG_OPTION_OLD_INTERNALS]: Remove macro and guarded code.
+
+2013-05-08  Werner Lemberg  <wl@gnu.org>
+
+       * Version 2.4.12 released.
+       ==========================
+
+
+       Tag sources with `VER-2-4-12'.
+
+       * docs/VERSION.DLL: Update documentation and bump version number to
+       2.4.12.
+
+       * README, Jamfile (RefDoc),
+       builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
+       builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
+       builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
+       builds/win32/visualc/freetype.dsp,
+       builds/win32/visualc/freetype.vcproj,
+       builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
+       builds/win32/visualce/freetype.vcproj,
+       builds/win32/visualce/index.html,
+       builds/wince/vc2005-ce/freetype.vcproj,
+       builds/wince/vc2005-ce/index.html,
+       builds/wince/vc2008-ce/freetype.vcproj,
+       builds/wince/vc2008-ce/index.html: s/2.4.11/2.4.12/, s/2411/2412/.
+
+       * include/freetype/freetype.h (FREETYPE_PATCH): Set to 12.
+
+       * builds/unix/configure.raw (version_info): Set to 16:1:10.
+
+2013-05-08  Werner Lemberg  <wl@gnu.org>
+
+       * docs/CHANGES: Updated.
+
+2013-05-08  Werner Lemberg  <wl@gnu.org>
+
+       * src/autofit/aflatin.c (af_latin_metrics_scale_dim): Typo.
+
+2013-05-05  Werner Lemberg  <wl@gnu.org>
+
+       Synchronize `ftconfig.h'.
+
+       * builds/unix/ftconfig.in: Updated.
+
+2013-05-05  Werner Lemberg  <wl@gnu.org>
+
+       Fix compilation with C++.
+
+       * src/base/md5.c (body): Use proper cast.
+
+2013-05-05  Werner Lemberg  <wl@gnu.org>
+
+       Fix 64bit compilation issues.
+
+       * include/freetype/config/ftconfig.h [FT_LONG64]: Typedef
+       `FT_Int64' here.
+
+       * src/base/ftcalc.c: Remove typedef of `FT_Int64'.
+       (FT_DivFix): Fix cast.
+       * src/base/fttrigon.c: Remove typedef of `FT_Int64'.
+
+2013-05-05  Werner Lemberg  <wl@gnu.org>
+
+       [raster] Fix clang issues.
+
+       Fix suggested by <octoploid@yandex.com>.
+
+       * src/raster/ftraster.c (ULong): New typedef.
+       (SCALED): Add proper cast.
+
+2013-05-04  Werner Lemberg  <wl@gnu.org>
+
+       Fix clang fixes.
+
+       * src/base/fttrigon.c (ft_trig_prenorm, FT_Vector_Rotate): Use
+       correct types.
+
+       * src/cff/cf2intrp.c (cf2_interpT2CharString) <default>: Force
+       unsigned for computations.
+       * src/cff/cffgload.c (cff_decoder_parse_charstrings): Ditto.
+       * src/cff/cffparse.c (cff_parse_integer): Ditto.
+
+       * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Ditto.
+
+2013-05-04  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Make Adobe CFF engine work correctly on 64bit hosts.
+
+       Reported by numerous people on the `freetype-devel' list.  Without
+       this fix, glyphs aren't properly aligned on a common baseline.
+
+       On 64bit systems, `FT_Pos' expands to `long int', having a width of
+       64bit.  `CF2_Fixed' expands to `int' which is normally 32bit wide on
+       64bit hosts also.  Wrong casts filled up the blues arrays with
+       incorrect values.  Note that all blues values are accessed with the
+       `cf2_blueToFixed' macro which handles the 64bit to 32bit conversion.
+
+       * src/cff/cf2ft.h (cf2_getBlueValues, cf2_getOtherBlues,
+       cf2_getFamilyBlues, cf2_getFamilyOtherBlues): Use `FT_Pos' for
+       `data', not `CF2_Fixed'.
+       * src/cff/cf2ft.c (cf2_getBlueValues, cf2_getOtherBlues,
+       cf2_getFamilyBlues, cf2_getFamilyOtherBlues): Updated.
+       * src/cff/cf2blues.c (cf2_blues_init): Updated.
+
+2013-05-04  Werner Lemberg  <wl@gnu.org>
+
+       More fixes for clang's `sanitize' feature.
+
+       * src/base/ftcalc.c (FT_DivFix): Use unsigned values for
+       computations which use the left shift operator and convert to signed
+       as the last step.
+       * src/base/fttrigon.c (ft_trig_prenorm, FT_Vector_Rotate,
+       FT_Vector_Length, FT_Vector_Polarize): Ditto.
+
+       * src/cff/cffgload.c (cff_decoder_parse_charstrings): Simplify.
+       * src/cff/cffload.c (cff_subfont_load): Fix constant.
+       * src/cff/cffparse.c (cff_parse_integer, cff_parse_real, do_fixed,
+       cff_parse_fixed_dynamic): Use unsigned values for computations which
+       use the left shift operator and convert to signed as the last step.
+
+       * src/cid/cidload.c (cid_get_offset): Ditto.
+
+       * src/psaux/psconv.c (PS_Conv_ToFixed): Ditto.
+       * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Ditto.
+
+       * src/truetype/ttinterp.c (TT_MulFix14, TT_DotFix14): Ditto.
+
+2013-05-04  Werner Lemberg  <wl@gnu.org>
+
+       Fix errors reported by clang's `sanitize' feature.
+
+       * include/freetype/internal/ftstream.h: Simplify and fix integer
+       extraction macros.
+       (FT_INT8_, FT_BYTE_I16, FT_BYTE_I32, FT_INT8_I16, FT_INT8_I32,
+       FT_INT8_I32, FT_INT8_U32): Removed.
+       (FT_PEEK_SHORT, FT_PEEK_LONG, FT_PEEK_OFF3, FT_PEEK_SHORT_LE,
+       FT_PEEK_LONG_LE, FT_PEEK_OFF3_LE): Use unsigned values for
+       computations and convert to signed as the last step.
+
+       * src/cff/cf2fixed.h (cf2_intToFixed, cf2_fixedToInt,
+       cf2_fracToFixed): Avoid shifts of negative values.
+       (cf2_intToFrac, cf2_fixedToFrac, cf2_fixedTo26Dot6): Removed,
+       unused.
+
+       * src/cff/cf2intrp.c (cf2_interpT2CharString) <cf2_cmdEXTENDEDNMBR,
+       default>: Use unsigned values for computations and convert to signed
+       as the last step.
+       Use proper types in tracing messages.
+
+       * src/cff/cffgload.c (cff_decoder_parse_charstrings): Use unsigned
+       values for computation of operands and convert to signed as the last
+       step.
+       Use proper type in tracing message.
+
+2013-05-03  Werner Lemberg  <wl@gnu.org>
+
+       * src/cff/cf2blues.c: Remove dead code.
+
+2013-05-02  Chris Liddell  <chris.liddell@artifex.com>
+
+       * src/cff/cffgload.c: Include FT_CFF_DRIVER_H.
+
+2013-04-27  Werner Lemberg  <wl@gnu.org>
+
+       * docs/CHANGES: Updated.
+       * README: Improved.
+
+2013-04-13  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Add a new Type 2 interpreter and hinter.
+
+       This work, written by Dave Arnold <darnold@adobe.com> and fully
+       integrated into FreeType by me, is a donation by Adobe in
+       collaboration with Google.  It is vastly superior to the old CFF
+       engine, and it will replace it soon.  Right now, it is still off by
+       default, and you have to explicitly select it using the new
+       `hinting-engine' property of the cff driver.
+
+       For convenience, (most of) the new files are committed separately.
+
+       * include/freetype/config/ftheader.h (FT_CFF_DRIVER_H): New macro.
+       * include/freetype/ftcffdrv.h: New file to access CFF driver
+       properties.
+       * include/freetype/fterrdef.h (FT_Err_Glyph_Too_Big): New error
+       code.
+       * include/freetype/internal/fttrace.h: Add `cf2blues', `cf2hints',
+       and `cf2interp'.
+
+       * src/cff/cffgload.h (CFF_SubFont): New member `current_subfont'.
+       * src/cff/cffobjs.h (CFF_DriverRec): New members `hinting_engine'
+       and `no_stem_darkening'.
+       * src/cff/cfftypes.h (CFF_FontRec): New member `cf2_instance'.
+
+       * src/cff/cff.c: Include new files.
+       * src/cff/cffdrivr.c (cff_property_set, cff_property_get): Handle
+       `hinting-engine' and `no-stem-darkening' properties (only the Adobe
+       engine listens to them).
+       * src/cff/cffgload.c: Include `cf2ft.h'.
+       (cff_decoder_prepare): Initialize `current_subfont'.
+       (cff_build_add_point): Handle Adobe engine which uses 16.16
+       coordinates.
+       (cff_slot_load): Handle FT_LOAD_NO_SCALE and FT_LOAD_NO_HINTING
+       separately.
+       Choose rendering engine based on `hinting_engine' property.
+       * src/cff/cffload.c (cff_font_done): Call finalizer of the Adobe
+       engine.
+       * src/cff/cffobjs.c: Include FT_CFF_DRIVER_H.
+       (cff_driver_init): Set default property values.
+
+       * src/cff/rules.mk (CFF_DRV_SRC, CFF_DRV_H): Add new files.
+
+       * src/cff/cf2*.*: New files, containing the Adobe engine.
+
+2013-04-12  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Minor code administration issues.
+
+       * src/cff/cffgload.c (check_points): Rename to...
+       (cff_check_points): ...this and make it FT_LOCAL.
+       (cff_builder_add_point, cff_builder_add_point1,
+       cff_builder_start_point, cff_builder_close_contour,
+       cff_lookup_glyph_by_stdcharcode, cff_get_glyph_data,
+       cff_free_glyph_data): Make them FT_LOCAL.
+
+       * src/cff/cffgload.h: Updated.
+
+2013-04-12  Werner Lemberg  <wl@gnu.org>
+
+       Add output bitmap checksums.
+
+       Use `FT2_DEBUG=bitmap:3' for tracing.
+
+       * src/base/md5.c, src/base/md5.h: New files, taken from
+
+         http://openwall.info/wiki/people/solar/software/public-domain-source-code/md5
+
+       * include/freetype/internal/fttrace.h: Add `bitmap'.
+
+       * src/base/ftobjs.c [FT_DEBUG_LEVEL_TRACE]: Include `md5.c'
+
+       (FT_Render_Glyph_Internal) [FT_DEBUG_LEVEL_TRACE]: For tracing,
+       convert resulting bitmap to a uniform format and compute a checksum.
+       Use `bitmap' category for the tracing message.
+
+       * src/base/rules.mk (BASE_H): Updated.
+
+       * docs/LICENSE.TXT: Updated.
+
+2013-04-12  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Add framework for CFF properties.
+
+       * include/freetype/internal/ftserv.h (FT_DEFINE_SERVICEDESCREC7):
+       New macro.
+
+       * src/cff/cffdrivr.c: Include FT_SERVICE_PROPERTIES_H.
+       (cff_property_set, cff_property_get): New functions, still empty.
+       Define `cff_service_properties' service.
+       Update `cff_services'.
+
+       * src/cff/cffpic.h: Include FT_SERVICE_PROPERTIES_H.
+       (CFF_SERVICE_PROPERTIES_GET): New macro.
+       (CffModulePIC): Add `cff_service_properties'.
+
+2013-04-03  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #38589.
+
+       * src/bdf/bdflib.c (_bdf_readstream): Thinko.
+
+2013-03-31  Werner Lemberg  <wl@gnu.org>
+
+       * configure: Use egrep, not grep.
+
+       Problem reported Mojca Miklavec <mojca.miklavec.lists@gmail.com>.
+
+2013-03-29  Werner Lemberg  <wl@gnu.org>
+
+       * include/freetype/ftlcdfil.h: Add description of color filtering.
+
+       Based on a contribution from Antti S. Lankila <alankila@bel.fi>
+       (Savannah bug #38607).
+
+2013-03-23  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Minor.
+
+       * src/autofit/afmodule.c (af_property_set): Typo.
+       (af_autofitter_init, af_autofitter_done): Use cast.
+
+2013-03-21  Werner Lemberg  <wl@gnu.org>
+
+       * configure: Automatically test for `gmake' also.
+
+       Suggested by Mojca Miklavec <mojca.miklavec.lists@gmail.com>.
+
+2013-03-21  Peter Breitenlohner  <peb@mppmu.mpg.de>
+
+       Respect CONFIG_SHELL from the environment.
+
+       Some large packages using FreeType have to use a broken (deficient)
+       /bin/sh.  The configure scripts (as generated by Autoconf) are
+       clever enough to find a better shell and put that one into the
+       environment variable CONFIG_SHELL.  If that environment variable is
+       already set the script skips the test and assumes to be already
+       running under a good shell.
+
+       * builds/unix/detect.mk: Honour CONFIG_SHELL.
+       * builds/unix/unix-def.in (SHELL): Define.
+
+2013-03-21  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah patch #7971.
+
+       * configure: Handle MAKE environment variable also.
+
+2013-03-17  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #38538.
+
+       * builds/amiga/src/base/ftdebug.c, builds/win32/ftdebug.c,
+       builds/wince/ftdebug.c (FT_Throw): Add function.
+
+2013-03-17  Werner Lemberg  <wl@gnu.org>
+
+       [raster] Remove dead code.
+
+       * src/raster/rastpic.c (ft_raster1_renderer_class_pic_init)
+       src/smooth/ftspic.c (ft_smooth_renderer_class_pic_init): Do it.
+
+2013-03-17  Werner Lemberg  <wl@gnu.org>
+
+       * src/pshinter/pshpic.h (GET_PIC): Use correct container.
+
+2013-03-15  Werner Lemberg  <wl@gnu.org>
+
+       * include/freetype/ftmoderr.h: Fix commit from 2013-03-11.
+
+       The previous version was not backwards compatible.  Reported by
+       Behdad.
+
+2013-03-14  Werner Lemberg  <wl@gnu.org>
+
+       */*: 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  Werner Lemberg  <wl@gnu.org>
+
+       New error management macros.
+
+       * include/freetype/fterrors.h (FT_ERR_XCAT, FT_ERR_CAT): Move to...
+       * include/freetype/fttypes.h: ... this file.
+       (FT_ERR, FT_ERR_EQ, FT_ERR_NEQ, FT_MODERR_EQ, FT_MODERR_NEQ): New
+       macros.
+
+       * include/freetype/freetype.h: Updated.
+
+2013-03-14  Werner Lemberg  <wl@gnu.org>
+
+       */*: Use FT_Err_Ok only.
+
+       This is a purely mechanical conversion.
+
+2013-03-14  Werner Lemberg  <wl@gnu.org>
+
+       */*: 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-13  Werner Lemberg  <wl@gnu.org>
+
+       Introduce `FT_THROW' macro.
+
+       The idea is to replace code like
+
+         return FT_Err_Foo_Bar;
+
+       or
+
+         return CFF_Err_Foo_Bar;
+
+       with
+
+         return FT_THROW( Foo_Bar );
+
+       The FT_THROW macro has two functions:
+
+         . It hides the module specific prefix.
+
+         . In debug mode, it calls the empty function `FT_Throw' which can
+           be thus used to set a breakpoint.
+
+       * include/freetype/internal/ftdebug.h (FT_THROW): New macro.
+       (FT_Throw): New prototype.
+       * src/base/ftdebug.c (FT_Throw): New function.
+
+2013-03-12  Werner Lemberg  <wl@gnu.org>
+
+       Remove `FT_KEEP_ERR_PREFIX'.
+
+       The idea is to always have FT_ERR_PREFIX available internally.
+
+       * include/freetype/fterrors.h: Use FT2_BUILD_LIBRARY to guard
+       undefinition of FT_ERR_PREFIX
+
+       * src/gxvalid/gxverror.h, src/otvalid/otverror.h,
+       src/sfnt/sferrors.h: Updated.
+
+2013-03-11  Werner Lemberg  <wl@gnu.org>
+
+       [gxvalid] Fix module error.
+
+       * src/gxvalid/gxverror.h (FT_ERR_BASE): Define as
+       FT_Mod_Err_GXvalid.
+       * include/freetype/ftmoderr.h: Add module error for `GXvalid'.
+
+2013-03-11  Werner Lemberg  <wl@gnu.org>
+
+       Always use module related error codes.
+
+       * src/cff/cffobjs.c (cff_face_init), src/type1/t1objs.c
+       (T1_Face_Init), src/type42/t42objs.c (T42_Face_Init): Use
+       `FT_ERROR_BASE'.
+
+       * src/type1/t1load.c (parse_encoding): Use
+       T1_Err_Unknown_File_Format.
+
+2013-03-08  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Set `linear{Hori,Vert}Advance' for embedded bitmaps also.
+
+       Problem reported by Khaled Hosny <khaledhosny@eglug.org>.
+
+       * src/cff/cffgload.c (cff_slot_load): Implement it.
+
+2013-02-23  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Fix commit ab02d9e8.
+
+       * src/base/ftbbox.c (BBox_Cubic_Check): Change scaling to msb of 22.
+
+2013-02-19  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] New bisecting BBox_Cubic_Check (disabled).
+
+       * src/base/ftbbox.c (BBox_Cubic_Check): New bisecting algorithm
+       for extremum search built around simple condition that defines
+       which half contains the extremum.
+
+2013-02-18  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [tools] Update BBox testing tool.
+
+       * src/tools/test_bbox.c: Add another cubic outline with exact BBox.
+       (REPEAT): Increase the number of benchmarking cycles.
+       (profile_outline): Tweak output formatting.
+
+2013-02-02  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #38235.
+
+       * builds/unix/configure.raw: Don't generate `freetype-config' and
+       `freetype.pc'.
+
+       * builds/unix/unix-def.in (FT2_EXTRA_LIBS, LIBBZ2, LIBZ,
+       build_libtool_libs, ft_version): New variables to be substituted.
+       (freetype-config, freetype.pc): New rules to generate those files.
+
+       * builds/unix/freetype-config.in: Remove code for handling `rpath'.
+       The use of $rpath has been accidentally removed in a patch from
+       2009-12-22, and apparently noone has missed it since.
+       Use `%' instead of `@' as a variable substitution marker.
+       Use quotes.
+
+       * builds/unix/freetype.in: Use `%' instead of `@' as a variable
+       substitution marker.
+       Use quotes.
+
+2013-02-07  Werner Lemberg  <wl@gnu.org>
+
+       * src/truetype/ttobjs.c (tt_size_run_prep): Reset more GS variables.
+
+       BTW, Greg agrees that the OpenType specification is missing the list
+       of GS variables which will always be reset to the default values
+       after the `prep' table has been executed.
+
+2013-02-06  Werner Lemberg  <wl@gnu.org>
+
+       * src/truetype/ttobjs.c (tt_size_run_prep): Reset reference points.
+
+       Up to now, we simply took a snapshot of the Graphics State after the
+       `prep' table has been executed, and right before a glyph's bytecode
+       was run it got reloaded.  However, as Greg Hitchcock has told us in
+       private communication, reference points get reset to zero in the MS
+       rasterizer and we follow in due course.  While reasonable, this is
+       undocumented behaviour.
+
+       Most notably, this fixes the rendering of Arial's `x' glyph in
+       subpixel hinting mode.
+
+2013-02-05  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] A better fix for Savannah bug #38211.
+
+       * src/truetype/ttinterp.c (Ins_IP): Implement identical behaviour to
+       MS rasterizer if rp1 == rp2 (confirmed by Greg Hitchcock).
+
+2013-02-01  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [pcf] Streamline parsing of PCF encoding table.
+
+       * src/pcf/pcfread.c (pcf_get_encodings): Use simpler double for-loop.
+       Reallocate array instead of using temporary storage.
+
+2013-02-01  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #38227.
+
+       * builds/unix/freetype-config.in: Set LC_ALL.
+
+2013-02-01  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #38221.
+
+       This complements commit 83c0ebab.
+
+       * src/base/ftcalc.c (FT_MulDiv_No_Round): Don't enclose with
+       `TT_USE_BYTECODE_INTERPRETER'.
+
+2013-02-01  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix Savannah bug #38211.
+
+       * src/truetype/ttinterp.c (Ins_IP): Make FreeType behave identical
+       to other interpreters if rp1 == rp2 (which is invalid).
+
+2013-01-28  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Small optimization of BBox calculation.
+
+       * src/base/ftbbox.c (BBox_Cubic_Check): Use FT_MSB function in
+       scaling algorithm.
+
+2013-01-26  Infinality  <infinality@infinality.net>
+
+       [truetype] Minor formatting fix.
+
+       * src/truetype/ttinterp.c: Updated.
+       (DO_RS): Fix indentation.
+
+2013-01-26  Infinality  <infinality@infinality.net>
+
+       [truetype] Fix rasterizer_version logic in sph.
+
+       * src/truetype/ttsubpix.c: Updated.
+       (ALWAYS_SKIP_DELTAP_Rules): Remove rule for Trebuchet MS.
+       (sph_set_tweaks): Fix `rasterizer_version' logic.
+
+2013-01-26  Infinality  <infinality@infinality.net>
+
+       [truetype] Align more to ClearType whitepaper for sph.
+
+       * include/freetype/internal/tttypes.h (TT_FaceRec): Add flags
+       for detected opcode patterns and compatibility mode.
+
+       * src/truetype/ttgload.c (tt_loader_init): Complete conditional.
+
+       * src/truetype/ttinterp.c: Updated.
+       Remove SPH_DEBUG and replace with FT_TRACE7.
+       (DO_RS): More conditions.
+       (Ins_FDEF): Add more opcode detection patterns.
+       More specific conditions when flagging an fdef.
+       Make compatibility mode only turn on when delta fdefs are found.
+       (Ins_CALL, Ins_LOOPCALL): Set flags for currently executed fdef.
+       (Ins_SHPIX): Remove logic to handle ttfautohinted fonts.
+       Simplify conditionals where possible.
+       Use `&' instead of `%' operator for dumb compilers.
+       (Ins_MIAP): Adjust twilight zone conditional.
+       Ensure `ignore_x_mode' is on when testing sph conditionals.
+       (Ins_MIRP): Ensure `ignore_x_mode' is on when testing sph
+       conditionals.
+       Do cvt cutin always when `ignore_x_mode' is active.
+       Remove test for ttfautohinted fonts.
+       (Ins_DELTAP): Ensure `ignore_x_mode' is on when testing sph
+       conditionals.
+       Do cvt cutin always when `ignore_x_mode' is active.
+       Remove test for ttfautohinted fonts.
+       Use `&' instead of `%' operator for dumb compilers.
+       (Ins_GETINFO): Remove SPH_DEBUG and replace with FT_TRACE7.
+
+       * src/truetype/ttinterp.h: Updated.
+       (TT_ExecContextRec): Remove compatibility_mode variable.
+       Add variable to indicate when executing in special fdefs for sph.
+
+       * src/truetype/ttobjs.h: Updated.
+       (TT_DefRecord): Add flags to identify special fdefs for sph.
+       (TT_SizeRec): Remove unnecessary ttfautohinted variable.
+
+       * src/truetype/ttsubpix.c: Updated.
+       (COMPATIBILITY_MODE_Rules): Remove all.  Auto-detected now.
+       (PIXEL_HINTING_Rules): Remove all.  Unnecessary after fixes.
+       (SKIP_NONPIXEL_Y_MOVES_Rules): Remove Ubuntu.
+       (SKIP_NONPIXEL_Y_MOVES_Rules_Exceptions): Add Arial Bold `N'.
+       (SKIP_OFFPIXEL_Y_MOVES_Rules): Remove all.  Happens automatically
+       now.
+       (ROUND_NONPIXEL_Y_MOVES_Rules): Remove Ubuntu.
+       (ROUND_NONPIXEL_Y_MOVES_Rules_Exceptions): Remove all.
+       (NORMAL_ROUND_Rules): Remove Verdana.
+       (NO_DELTAP_AFTER_IUP_Rules): Remove all.
+       (sph_set_tweaks): Performance fix.  Don't run prep always.
+       Adjust conditional for sph_compatibility_mode.
+
+       * src/truetype/ttsubpix.h: Add new fdef flags for sph.
+
+2013-01-23  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Fix broken emboldening at small sizes.
+
+       * src/base/ftoutln.c (FT_Outline_EmboldenXY): Do not attempt to
+       normalize zero-length vectors.
+
+2013-01-25  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #38167.
+
+       This fixes commit 83c0ebab from 2012-06-27.
+
+       * src/truetype/ttinterp.h:
+       s/TT_CONFIG_OPTION_BYTECODE_INTERPRETER/TT_USE_BYTECODE_INTERPRETER/.
+
+2013-01-25  Xi Wang  <xi.wang@gmail.com>
+
+       [sfnt] Fix broken pointer overflow checks.
+
+       Many compilers such as gcc and clang optimize away pointer overflow
+       checks `p + n < p', because pointer overflow is undefined behavior.
+       Use a safe form `n > p_limit - p' instead.
+
+       Also avoid possible integer overflow issues, for example, using
+       `num_glyphs > ( p_limit - p ) / 2' rather than `num_glyphs * 2'
+       given a large `num_glyphs'.
+
+       * src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Implement it.
+
+2013-01-25  Werner Lemberg  <wl@gnu.org>
+
+       [base] Fix `make multi'.
+
+       * src/base/ftoutln.c, src/base/fttrigon.c: Include
+       FT_INTERNAL_CALC_H.
+
+2013-01-25  David 'Digit' Turner  <digit@google.com>
+
+       [truetype] Fix C++ compilation.
+
+       * src/truetype/ttsubpix.h: Updated.
+       (SPH_X_SCALING_RULES_SIZE): Moved and renamed to...
+       * src/truetype/ttsubpix.c (X_SCALING_RULES_SIZE): This.
+       (sph_X_SCALING_Rules): Removed.
+       (scale_test_tweak): Make function static.
+       (sph_test_tweak_x_scaling): New function.
+
+       * src/truetype/ttgload.c (TT_Process_Simple_Glyph): Updated.
+
+2013-01-23  Werner Lemberg  <wl@gnu.org>
+
+       [base] Make `FT_Hypot' really internal.
+
+       * include/freetype/fttrigon.h (FT_Hypot): Move to...
+       * include/freetype/internal/ftcalc.h: This file.
+
+       * src/base/fttrigon.c (FT_Hypot): Move to...
+       * src/base/ftcalc.c: This file.
+       Include FT_TRIGONOMETRY_H.
+
+       * src/truetype/ttgload.c: Don't include FT_TRIGONOMETRY_H.
+
+2013-01-23  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Revert change from 2013-01-22.
+
+       FreeType's `height' value is the baseline-to-baseline distance...
+
+       * src/truetype/ttobjs.c (tt_size_reset): Undo.
+
+2013-01-23  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base, truetype] New internal `FT_Hypot' function.
+
+       * include/freetype/fttrigon.h (FT_Hypot): Declare it.
+       * src/base/fttrigon.c (FT_Hypot): Define it.
+       * src/truetype/ttgload.c (TT_Process_Composite_Component): Use it
+       instead of explicit expressions.
+       * src/truetype/ttinterp.c (Current_Ratio, Normalize): Use it instead
+       of TT_VecLen.
+       (TT_VecLen): Removed.
+
+2013-01-23  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Fix integer overflow.
+
+       * src/base/ftoutln.c (FT_Outline_EmboldenXY): Normalize incoming and
+       outgoing vectors and use fixed point arithmetic.
+
+2013-01-23  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Fix integer overflow.
+
+       * src/base/ftoutln.c (FT_Outline_Get_Orientation): Scale the
+       coordinates down to avoid overflow.
+
+2013-01-23  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Split out MSB function.
+
+       * src/base/fttrigon.c (ft_trig_prenorm): Borrow from here.
+       * include/freetype/internal/ftcalc.h (FT_MSB): Declare here.
+       * src/base/ftcalc.c (FT_MSB): Define here.
+
+2013-01-22  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix font height.
+
+       * src/truetype/ttobjs.c (tt_size_reset): The Windows rendering
+       engine uses rounded values of the ascender and descender to compute
+       the TrueType font height.
+
+2013-01-16  Behdad Esfahbod  <behdad@behdad.org>
+
+       [sfnt] Fix optimized sbit loader.
+
+       It was not taking bit_depth into consideration when blitting!
+
+       * src/sfnt/ttsbit0.c (tt_sbit_decoder_load_byte_aligned,
+       * tt_sbit_decoder_load_bit_aligned): Handle bit
+       depth.
+
+2013-01-16  David 'Digit' Turner  <digit@google.com>
+
+       [truetype] Improve sub-pixel code.
+
+       This patches fixes many issues with the ttsubpix implementation.
+
+       1. Data tables are defined, instead of declared, in the header, and
+          thus copied into each source file that includes it.
+
+       2. These tables were defined as global, mutable, visible variables,
+          and thus costing private RAM to every process that loads the
+          library (> 50 KB / process, this is huge!).
+
+          Additionally, this also made the library export the symbols
+          completely needlessly.
+
+       3. Missing `sph_' and `SPH_' prefixes to some of the definitions.
+
+       Note that this doesn't try to fix the incredibly inefficient storage
+       format for the data tables used by the code.  This one will require
+       another pass in the future.
+
+       * src/truetype/ttinterp.h (MAX_NAME_SIZE, MAX_CLASS_MEMBERS):
+       Renamed to...
+       (SPH_MAX_NAME_SIZE, SPH_MAX_CLASS_MEMBERS): This.
+       Update all users.
+
+       (SPH_TweakRule, SPH_ScaleRule): Decorate with `const' where
+       appropriate.
+
+       (Font_Class): Rename to...
+       (SPH_Font_Class): This.  Decorate with `const' where appropriate.
+       
+       * src/truetype/ttsubpix.h (scale_test_tweak, sph_test_tweak):
+       Decorate arguments with `const' where appropriate.
+
+       Move font tweaking tables to...
+
+       * src/truetype/ttsubpic.c: This file and decorate them with `static'
+       and `const' where appropriate.
+
+       (X_SCALING_Rules, X_SCALING_RULES_SIZE): Renamed to...
+       (spu_X_SCALING_Rules, SPH_X_SCALING_RULES_SIZE): This.
+       Update all users.
+
+2013-01-12  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [truetype] Improve accuracy of normalization of short vectors.
+
+       Unit vector components are stored as 2.14 fixed-point numbers. In
+       order to calculate all 14 bits accurately, a short vector to be
+       normalized has to be upscaled to at least 14 bits before its length
+       is calculated. This has been safe since accurate CORDIC algorithms
+       were adopted.
+
+       * src/truetype/ttinterp.c (Normalize): Scale short vectors by 0x4000.
+
+2013-01-12  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [truetype] Kill very old vector normalization hacks.
+
+       Back in the days, vector length calculations were not very accurate
+       and the vector normalization function, Normalize, had to meticulously
+       correct the errors for long vectors [commit b7ef2b096867]. It was no
+       longer necessary after accurate CORDIC algorithms were adopted, but
+       the code remained. It is time to kill it.
+
+       * src/truetype/ttinterp.c (Normalize): Remove error compensation.
+       (TT_VecLen): Remove any mention of old less accurate implementation.
+
+2013-01-11  Werner Lemberg  <wl@gnu.org>
+
+       Disable FT_CONFIG_OPTION_OLD_INTERNALS.
+
+       After the next release we are going to remove the code completely.
+
+       * devel/ftoption.h, include/freetype/config/ftoption.h
+       (FT_CONFIG_OPTION_OLD_INTERNALS): Comment out.
+       * docs/CHANGES: Document it.
+
+2013-01-10  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Update the overflow protection bit.
+
+       The recent optimizations of CORDIC iterations drastically reduce the
+       expansion factor.  Vector components with MSB of 29 are now safe
+       from overflow.
+
+       * src/base/fttrigon.c (FT_TRIG_SAFE_MSB): New macro.
+       (ft_trig_prenorm): Use it and remove dead code.
+
+2013-01-09  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base, pshinter] Use FT_ABS, FT_MIN, and FT_MAX for readability.
+
+       * src/base/ftbbox.c: Updated.
+       * src/base/ftobjs.c: Updated.
+       * src/base/fttrigon.c: Updated.
+       * src/pshinter/pshalgo.c: Updated.
+       * src/pshinter/pshrec.c: Updated.
+
+2013-01-08  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Clean up trigonometric core.
+
+       * src/base/fttrigon.c: Document the algorithm in a large comment.
+       (FT_TRIG_COSCALE): Remove macro.
+       (FT_Tan: Use `FT_TRIG_SCALE' instead.
+       (FT_Cos, FT_Vector_Unit): Ditto and round the return values.
+
+2013-01-02  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Use rounding in CORDIC iterations.
+
+       * src/base/fttrigon.c (ft_trig_pseudo_rotate,
+       ft_trig_pseudo_polarize): Improve accuracy by rounding.
+
+2013-01-02  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Reduce trigonometric algorithms.
+
+       After we get within 45 degrees by means of true 90-degree rotations,
+       we can remove initial 45-degree CORDIC iteration and start from
+       atan(1/2) pseudorotation, reducing expansion factor thereby.
+
+       * src/base/fttrigon.c (FT_TRIG_SCALE, FT_TRIG_COSCALE): Update macros.
+       (ft_trig_pseudo_rotate, ft_trig_pseudo_polarize): Update.
+
+       * src/tools/cordic.py: Bring up to date with trigonometric core.
+
+       * docs/CHANGES: Old typo.
+
+2013-01-02  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       * src/pshinter/pshalgo.h: Remove unused code.
+
+2012-12-27  Werner Lemberg  <wl@gnu.org>
+
+       * src/truetype/ttgload.c (tt_loader_init): Add more tracing.
+
+2012-12-23  Werner Lemberg  <wl@gnu.org>
+
+       [type1] Fix handling of /FontBBox in MM fonts.
+       Problem reported by Del Merritt <del@alum.mit.edu>
+
+       If we have
+
+         /FontBBox { { 11 12 13 14 15 16 17 18 }
+                     { 21 22 23 24 25 26 27 28 }
+                     { 31 32 33 34 35 36 37 38 }
+                     { 41 42 43 44 45 46 47 48 } }
+
+       in the /Blend dictionary,  then the first BBox is { 11 21 31 41 },
+       the second { 12 22 32 42 }, etc.
+
+       * include/freetype/internal/psaux.h (T1_FieldType): Add
+       `T1_FIELD_TYPE_MM_BBOX' (for temporary use).
+
+       * src/psaux/psobjs.c (ps_parser_load_field) <T1_FIELD_TYPE_MM_BBOX>:
+       Implement it.
+
+2012-12-21  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       * src/tools/cordic.py: Bring up to date with trigonometric core.
+
+2012-12-21  Werner Lemberg  <wl@gnu.org>
+
+       Check parameters of `FT_Outline_New'.
+       Problem reported by Robin Watts <robin.watts@artifex.com>.
+
+       * src/base/ftoutln.c (FT_Outline_New_Internal): Ensure that
+       `numContours' and `numPoints' fit into FT_Outline's `n_points' and
+       `n_contours', respectively.
+
+2012-12-20  Werner Lemberg  <wl@gnu.org>
+
+       * Version 2.4.11 released.
+       ==========================
+
+
+       Tag sources with `VER-2-4-11'.
+
+       * docs/CHANGES, docs/release: Updated.
+
+       * docs/VERSION.DLL: Update documentation and bump version number to
+       2.4.11.
+
+       * README, Jamfile (RefDoc),
+       builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
+       builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
+       builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
+       builds/win32/visualc/freetype.dsp,
+       builds/win32/visualc/freetype.vcproj,
+       builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
+       builds/win32/visualce/freetype.vcproj,
+       builds/win32/visualce/index.html,
+       builds/wince/vc2005-ce/freetype.vcproj,
+       builds/wince/vc2005-ce/index.html,
+       builds/wince/vc2008-ce/freetype.vcproj,
+       builds/wince/vc2008-ce/index.html: s/2.4.10/2.4.11/, s/2410/2411/.
+
+       * include/freetype/freetype.h (FREETYPE_PATCH): Set to 11.
+
+       * builds/unix/configure.raw (version_info): Set to 16:0:10.
+
+       * builds/toplevel.mk (dist): Don't include `.mailmap'.
+
+2012-12-20  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Improve trigonometric core.
+
+       FreeType used to rely on a 24-step iteration CORDIC algorithm to
+       calculate trigonometric functions and rotate vectors. It turns out
+       that once the vector is in the right half-plane, the initial rotation
+       by 63 degrees is not necessary. The algorithm is perfectly capable
+       to converge to any angle starting from the second 45 degree rotation.
+       This patch removes the first rotation and makes it a 23-step CORDIC
+       algorithm.
+
+       * src/base/fttrigon.c (FT_TRIG_SCALE, FT_TRIG_COSCALE): Update macro
+       values.
+       (ft_trig_pseudo_rotate, ft_trig_pseudo_polarize): Remove initial
+       rotation.
+
+2012-12-19  Werner Lemberg  <wl@gnu.org>
+
+       * src/base/ftobjs.c (ft_property_do): Fix compiler warning.
+
+2012-12-19  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       * src/base/ftrfork.c (FT_Raccess_Guess): Switch to FT_Int counters.
+
+2012-12-19  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Clean up trigonometric core.
+
+       * src/base/fttrrigon.c (ft_trig_pseudo_polarize): Align algorithm
+       with `ft_trig_pseudo_rotate'.
+
+2012-12-18  Infinality  <infinality@infinality.net>
+
+       [truetype] Minor performance enhancement.
+
+       * src/truetype/ttgload.c: (TT_Process_Simple_Glyph): Use FT_MulFix
+       instead of FT_MulDiv.
+
+2012-12-17  Infinality  <infinality@infinality.net>
+
+       [truetype] Remove unusued code and variables.
+
+       * src/truetype/ttinterp.c: Updated.
+       (Ins_FDEF): Remove opcode patterns that are not being used.
+
+2012-12-16  Werner Lemberg  <wl@gnu.org>
+
+       Various compiler warning fixes.
+
+       * include/freetype/internal/ftserv.h (FT_SERVICE_UNAVAILABLE): Use
+       `logical not' operator instead of negation.  The idea is that `~'
+       returns exactly the data type enforced by the cast to a pointer (be
+       it 32bit or 64bit or whatever), while a negative integer has not
+       this flexibility.
+       * src/cache/ftccmap.c (FTC_CMAP_UNKNOWN): Ditto.
+       * src/truetype/ttgxvar.c (ALL_POINTS, TT_Get_MM_Var): Ditto.
+       * src/type/t1load.c (T1_Get_MM_Var): Ditto.
+       (parse_blend_axis_types): Use cast.
+       * src/bdf/bdflib.c (_bdf_readstream): Use cast.
+
+2012-12-16  Infinality  <infinality@infinality.net>
+
+       [truetype] Remove unusued code and variables.  Add minor fixes.
+
+       * src/truetype/ttsubpix.h: Updated.
+       (SKIP_NONPIXEL_Y_MOVES_Rules_Exceptions): Add Trebuchet MS.
+       (ALLOW_X_DMOVEX_Rules): Remove Arial characters.
+       (ALLOW_X_DMOVE_Rules): Remove Arial characters.
+       (RASTERIZER_35_Rules): Verdana no longer needs to be here.
+       (SKIP_IUP_Rules): Formatting fix.
+       (DELTAP_SKIP_EXAGGERATED_VALUES_Rules): Remove Segoe UI.
+       (COMPATIBLE_WIDTHS_Rules): Add Monaco and Trebuchet MS.
+       (X_SCALING_Rules): Add misc. corrective fixes.
+
+       * src/truetype/ttgload.c: (TT_Process_Simple_Glyph): Adjust correction
+       factor for emboldening during scaling.
+
+       * src/truetype/ttinterp.h: Updated.
+       (TT_ExecContextRec): Remove unused variables.
+
+       * src/truetype/ttobjs.h: Updated.
+       (TT_SizeRec): Add ttfautohinted variable.
+
+       * src/truetype/ttinterp.c: Updated.
+       (Ins_FDEF): Rework code to fix bugs and add more detection.
+       (Ins_CALL): Remove unused code.
+       (Ins_LOOPCALL): Remove unused code.
+       (TT_RunIns): Remove unusued code.
+       (Ins_SHPIX): Add logic to handle ttfautohinted fonts.
+       (Ins_MIRP): Don't round x in cut-in calculation.  Add logic to handle
+       ttfautohinted fonts.
+
+2012-12-16  Werner Lemberg  <wl@gnu.org>
+
+       [sfnt] Fix Savannah bug #37936.
+
+       * src/sfnt/ttload.c (tt_face_load_gasp): Avoid memory leak.
+
+2012-12-15  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Fix 11-year old bug.
+
+       Since the initial commit (ebe85f59) the value of FT_TRIG_SCALE has
+       always been slightly less than the correct value, which has been
+       given in the comment as a hexadecimal. As a result, vector lengths
+       were underestimated and rotated vectors were shortened.
+
+       * src/base/fttrigon.c (FT_TRIG_SCALE): Fix macro value.
+
+2012-12-15  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #37907.
+
+       * src/bdf/bdflib.c (_bdf_parse_glyphs) <ENCODING>: Normalize
+       negative second parameter of `ENCODING' field also.
+
+2012-12-15  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #37906.
+
+       * src/bdf/bdflib.c (_bdf_parse_glyphs) <ENCODING>: Use correct array
+       size for checking `glyph_enc'.
+
+2012-12-15  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #37905.
+
+       * src/bdf/bdflib.c (_bdf_parse_start) <STARTPROPERTIES>: Reset
+       `props_size' to zero in case of allocation error; this value gets
+       used in a loop in `bdf_free_font'.
+
+2012-12-10  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [truetype] Scale F_dot_P down.
+
+       The dot product between freeVector and projVector or cosine of
+       the angle between these FT_F2Dot14 unit vectors used to be scaled up
+       by 4 and routinely occupied 32 bits in an FT_Long field F_dot_P.
+       This patch scales the value down by 2^14 instead, which simplifies
+       its use throughout the bytecode interpreter.
+
+       This does not lead to the loss of precision because the lower bits
+       are unreliable anyway. Consider two unit vectors (1,0) and (.6,.8)
+       for which the true value of F_dot_P is .6 * 0x40000000 = 0x26666666.
+       These vectors are stored as (0x4000,0) and (0x2666,0x3333) after
+       rounding and F_dot_P is assigned 0x26660000. The lower bits were
+       already lost while rounding the unit vector components.
+
+       Besides code simplification, this change can lead to better
+       performance when FT_MulDiv with the scaled-down F_dot_P is less
+       likely to use the costly 64-bit path. We are not changing the type
+       of F_dot_P to FT_F2Dot14 at this point.
+
+       * src/truetype/ttinterp.c (Compute_Funcs): Scale F_dot_P down by 14
+       bits and modify its use accordingly.
+       (Direct_Move, Direct_Move_Orig, Compute_Point_Displacement): Modify
+       the use of F_dot_P field.
+       * src/truetype/ttobjs.c (tt_size_run_fpgm): Change arbitrary
+       assignment of F_dot_P to its theoretical maximum in case we decide
+       to scale back its type later.
+
+2012-12-09  Johnson Y. Yan  <yinsen_yan@foxitsoftware.com>
+
+       [type1] Another fix for 2012-09-17 commit.
+
+       * src/type1/t1parse.c (T1_Get_Private_Dict) <found>: Correctly set
+       `limit' value.
+
+2012-12-06  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [truetype] Tweak the previous commit.
+
+       * src/truetype/ttinterp.c (Current_Ratio): Put unit vector
+       components as the second TT_MulFix14 arguments. This is required
+       on 16-bit systems.
+
+2012-12-06  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [truetype] Microoptimizations in bytecode interpreter.
+
+       * src/truetype/ttinterp.c (TT_DivFix14): New macro.
+       (Normalize): Use it here.
+       (Current_Ratio): Use TT_MulFix14 instead of FT_MulDiv.
+       (Ins_SHPIX): Cancel out two TT_MulFix14 calls.
+
+2012-12-05  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [truetype] Cosmetic improvement in bytecode interpreter.
+
+       * src/truetype/ttinterp.c: Use explicit calls to FT_MulDiv,
+       FT_MulFix, and FT_DivFix instead of macros.
+
+2012-12-03  John Tytgat  <John.Tytgat@esko.com>
+
+       [pshinter] Clamp BlueScale value.
+
+       This is Savannah bug #37856.
+
+       * src/pshinter/pshglob.c (psh_calc_max_height): New function.
+       (psh_globals_new): Use it to limit BlueScale value to
+       `1 / max_of_blue_zone_heights'.
+
+2012-12-01  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [truetype, type1] Revise the use of FT_MulDiv.
+
+       * src/truetype/ttgxvar.c: Updated.
+       * src/truetype/ttobjs.c: Updated.
+       * src/type1/t1load.c: Updated.
+
+2012-11-30  Werner Lemberg  <wl@gnu.org>
+
+       [configure] Preserve customized `ftoption.h'.
+
+       Problem reported by Del Merritt <del@alum.mit.edu>.
+
+       * builds/unix/configure.raw <cpp computation of bit length>: Don't
+       remove existing FreeType configuration files.
+
+2012-11-29  John Tytgat  <John.Tytgat@esko.com>
+
+       [type1] Fix Savannah bug #37831.
+
+       The bug report also contains a patch.
+
+       * src/type1/t1parse.c (T1_Get_Private_Dict) <found>: Really fix
+       change from 2012-09-17.
+
+2012-11-28  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [truetype] Fix formatting and typo.
+
+2012-11-27  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [cid, type1, type42] Clean up units_per_EM calculations.
+
+       * src/cid/cidload.c (cid_parse_font_matrix): Updated.
+       * src/type1/t1load.c (t1_parse_font_matrix): Updated.
+       * src/type42/t42parse.c (t42_parse_font_matrix): Updated.
+
+2012-11-27  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [ftstroke] Minor improvement.
+
+       * src/base/ftstroke.c: Replace nested FT_DivFix and FT_MulFix with
+       FT_MulDiv.
+
+2012-11-17  Werner Lemberg  <wl@gnu.org>
+
+       * src/base/fttrigon.c (ft_trig_downscale): Make 64bit version work.
+
+2012-11-15  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Fix integer overflows in dd5718c7d67a.
+
+       * src/base/ftoutln.c (FT_Outline_EmboldenXY): Use FT_MulDiv.
+
+2012-11-15  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Trace stem widths.
+
+       * src/autofit/aflatin.c (af_latin_metrics_init_widths): Add some
+       FT_TRACE calls.
+
+2012-11-13  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Add support for OpenType Collections (OTC).
+
+       * src/cff/cffload.c (cff_font_load): Separate subfont and face
+       index handling to load both pure CFFs with multiple subfonts and
+       OTCs (with multiple faces where each face holds exactly one
+       subfont).
+       * src/cff/cffobjs.c (cff_face_init): Updated.
+
+2012-11-12  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Minor improvement.
+
+       * src/autofit/aflatin.c (af_latin_hints_compute_blue_edges): Fix
+       loop.
+
+2012-11-10  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Improve tracing.
+
+       * src/autofit/aflatin.c (af_latin_hint_edges)
+       [FT_DEBUG_LEVEL_TRACE]: Count number of actions and emit something
+       if there weren't any.
+
+2012-11-04  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Fortify emboldening code against egregious distortions.
+
+       * src/base/ftoutln.c (FT_Outline_EmboldenXY): Threshold emboldening
+       strength when it leads to segment collapse.
+
+2012-11-03  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [base] Clean up emboldening code and improve comments there.
+
+       * src/base/ftoutln.c (FT_Outline_EmboldenXY): Replace sequential
+       calls to FT_MulFix and FT_DivFix with FT_MulDiv.
+       Mention that bisectors are used to figure out the shift direction.
+
+2012-10-24  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Add standard character to `AF_ScriptClassRec' structure.
+
+       * src/autofit/aftypes.h (AF_ScriptClassRec): Add `standard_char'
+       member.
+       (AF_DEFINE_SCRIPT_CLASS): Updated.
+
+       * src/autofit/aflatin.c (af_latin_metrics_init_widths): Use it.
+       (af_latin_metrics_init, af_latin_script_class): Updated.
+
+       * src/autofit/aflatin.c (af_latin2_metrics_init_widths): Use it.
+       (af_latin2_metrics_init, af_latin2_script_class): Updated.
+
+       * src/autofit/afcjk.c (af_cjk_metrics_init_widths): Use it.
+       (af_cjk_metrics_init, af_cjk_script_class): Updated.
+
+       * src/autofit/afindic.c (af_indic_metrics_init,
+       af_indic_script_class): Updated.
+
+       * src/autofit/afcjk.h, src/autofit/aflatin.h: Updated.
+
+       * src/autofit/afdummy.c: Updated.
+
+2012-10-24  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Only use Unicode CMap.
+
+       * src/autofit/aflatin.c (af_latin_metrics_init): Implement it, to be
+       in sync with `af_face_globals_compute_script_coverage'.
+
+2012-10-21  Werner Lemberg  <wl@gnu.org>
+
+       [psaux] Improve parsing of invalid numbers.
+
+       * src/psaux/psconv.c (PS_Conv_Strtol): Always parse complete number,
+       even in case of overflow.
+       (PS_Conv_ToInt): Only increase cursor if parsing was successful.
+       (PS_Conv_ToFixed): Ditto.
+       Trace underflow and data error.
+
+2012-10-21  Werner Lemberg  <wl@gnu.org>
+
+       [smooth] Improve tracing.
+
+       * src/smooth/ftgrays.c (gray_sweep): Trace last sweep line of
+       current band also.
+
+2012-10-20  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [truetype] Cheaper way to threshold angles between vectors.
+
+       * src/truetype/ttinterp.c (Ins_ISECT): Thresholding tangent is a lot
+       cheaper than thresholding sine.
+
+2012-10-20  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Improve parsing of invalid real numbers.
+
+       * src/cff/cffparse.c (cff_parse_real): Always parse complete number,
+       even in case of overflow or underflow.
+       Also trace one more underflow.
+
+2012-10-20  Andreas Pehnack  <andreas.pehnack@me.com>
+
+       [sfnt] Load pure CFF fonts wrapped in SFNT container.
+
+       Such fonts only have a `cmap' and a `CFF' table.
+
+       * src/sfnt/ttload.c (tt_face_load_font_dir): Don't call
+       `check_table_dir' if font signature is `OTTO'.
+
+2012-10-20  Werner Lemberg  <wl@gnu.org>
+
+       [psaux] Fix some value overflows and improve tracing.
+
+       * src/psaux/psconv.c: Include FT_INTERNAL_DEBUG_H.
+       (FT_COMPONENT): Define.
+       (PS_Conv_Strtol): Return FT_Long.
+       Handle bad data and overflow.
+       Emit some tracing messages in case of error.
+       (PS_Conv_ToInt): Return FT_Long.
+       (PS_Conv_ToFixed): Updated.
+       * src/psaux/psconv.h: Updated.
+
+       * include/freetype/internal/fttrace.h: Add `psconv'.
+
+2012-10-20  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Fix `make multi CC=c++'.
+
+       * src/autofit/aflatin.c, src/autofit/aflatin2.c: Include
+       `afglobal.h'.
+       * src/autofit/afloader.c: Fix order of header files.
+       * src/autofit/afmodule.c: Include `afglobal.h' and `aferrors.h'.
+
+2012-10-19  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Fix more value errors and improve tracing.
+
+       * src/cff/cffparse.c (cff_parse_integer): Emit tracing message in
+       case of error.
+       (cff_parse_real): Handle and trace overflow, underflow, and bad data
+       consistently.
+       (do_fixed): New helper function, handling and tracing overflow.
+       (cff_parse_fixed, cff_parse_fixed_scaled): Use `do_fixed'.
+
+2012-10-17  Werner Lemberg  <wl@gnu.org>
+
+       [psaux] Fix some value overflows.
+
+       * src/psaux/psconv.c (PS_Conv_ToFixed): Implement it.
+
+2012-10-17  Bram Tassyns  <BramT@enfocus.com>
+
+       [cff] Fix value overflow.
+
+       * src/cff/cffparse.c (cff_parse_fixed_scaled): Implement it.
+
+2012-10-17  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix Savannah bug #37572.
+
+       * src/truetype/ttinterp.c (Ins_ISECT): Use angle between vectors to
+       avoid grazing intersections.  The previous threshold was too coarse,
+       incorrectly rejecting short but valid vectors.
+
+2012-09-30  Gilles Espinasse  <g.esp@free.fr>
+
+       Remove useless `rm' detection.
+
+       `rm -f' is directly used in the `configure' script created by
+       autoconf, thus no availability test is necessary.
+
+       * builds/unix/configure.raw (RMF): Remove test.
+       * builds/unix/unix-def.in (DELETE): Updated.
+
+2012-09-29  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Minor optimization.
+
+       * src/autofit/afglobals.c (af_face_globals_compute_script_coverage):
+       Add loop condition.
+
+2012-09-29  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Fix thinko.
+
+       * src/autofit/aftypes.h (AF_SCRIPT):
+       s/AF_SCRIPT_NONE/AF_SCRIPT_DUMMY/.  We already use `AF_SCRIPT_NONE'
+       as a bit mask.
+
+       * src/autofit/afdummy.c: Updated.
+
+2012-09-18  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Implement `increase-x-height' property.
+
+       * include/freetype/ftautoh.h (FT_Prop_IncreaseXHeight): New
+       structure.
+
+       * include/autofit/afmodule.c (af_property_get_face_globals): New
+       function, re-using code from `af_property_get'.
+       (af_property_set, af_property_get): Handle `increase-x-height'.
+       Updated.
+
+2012-09-18  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Implement Infinality's `increase glyph heights'.
+
+       This is an improved version of a similar fix contained in the
+       so-called `Infinality patch', taken from
+
+         http://www.infinality.net/fedora/linux/zips/freetype-infinality-2.4.10-20120616_01-x86_64.tar.bz2
+
+       which addresses various enhancements of the auto-hinter.  Without
+       properties to control a module's metadata it wasn't possible to
+       adapt the patches because everything was originally controlled by
+       environment variables which I consider not suitable in general.
+
+       A patch to control `increase_x_height' follows.
+
+       * src/autofit/afglobal.h (AF_PROP_INCREASE_X_HEIGHT_MIN,
+       AF_PROP_INCREASE_X_HEIGHT_MAX): New macros.
+       (AF_FaceGlobalsRec): Add `increase_x_height' member.
+       * src/autofit/afglobal.c (af_face_globals_new): Initialize it.
+
+       * src/autofit/aflatin.c (af_latin_metrics_scale_dim),
+       * src/autofit/aflatin2.c (af_latin2_metrics_scale_dim): Implement
+       handling of `increase_x_height'.
+
+2012-09-18  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Add hierarchical property access to some structures.
+
+       * src/autofit/afglobal.h: Include `afmodule.h'.
+       (AF_FaceGlobalsRec): Add `module' member.
+       (AF_FaceGlobals): Typedef moved to...
+       * src/autofit/aftypes.h: Here.
+       (AF_ScriptMetricsRec): Add `globals' member.
+
+       * src/autofit/afglobal.c (af_face_globals_new,
+       af_face_globals_compute_script_coverage,
+       af_face_globals_get_metrics): Updated.
+
+       * src/autofit/afloader.c (af_loader_reset), src/autofit/afmodule.c
+       (af_property_get): Updated.
+
+2012-09-17  Werner Lemberg  <wl@gnu.org>
+
+       [type1] Fix Savannah bug #37350.
+
+       * src/type1/t1parse.c (T1_Get_Private_Dict) <found>: Check for ASCII
+       storage only if we actually have at least four bytes.
+
+2012-09-15  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Implement `fallback-script' property.
+
+       * src/autofit/afglobal.c: s/default_script/fallback_script/.
+       * src/autofit/afglobal.h: s/AF_SCRIPT_DEFAULT/AF_SCRIPT_FALLBACK/.
+
+       * src/autofit/afmodule.c: s/default_script/fallback_script/.
+       (af_property_set, af_property_get): Implement `fallback-script'.
+       * src/autofit/afmodule.h: s/default_script/fallback_script/.
+
+       * include/freetype/ftautoh.h: Document it.
+
+2012-09-15  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Correct previous Unicode 6.1.0 change.
+
+       The auto-hinter's latin module only handles latin ligatures in the
+       `Alphabetical Presentation Forms' block.
+
+       * src/autofit/aflatin.c (af_latin_uniranges): Fix it.
+
+2012-09-15  Werner Lemberg  <wl@gnu.org>
+
+       * src/autofit/afmodule.c: s/FT_Err_/AF_Err_/.
+
+2012-09-15  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Make default script a global property.
+
+       * src/autofit/afmodule.h (AF_ModuleRec): Add `default_script' field.
+
+       * src/autofit/afglobal.c (af_face_globals_compute_script_coverage,
+       af_face_globals_new), src/autofit/afloader.c (af_loader_reset),
+       src/autofit/afmodule.c (af_property_get) <glyph-to-script-map>,
+       af_autofitter_init:
+       Handle default script.
+
+       * src/autofit/afglobal.h: Updated.
+
+2012-09-15  Werner Lemberg  <wl@gnu.org>
+
+       Use `FT_Module' instead of `FT_Library' argument in property funcs.
+
+       This internal change simplifies access to global module data.
+
+       * include/freetype/internal/services/svprop.h
+       (FT_Properties_SetFunc, FT_Properties_GetFunc): Change accordingly.
+
+       * src/base/ftobjs.c (ft_property_do), src/autofit/afmodule.c
+       (af_property_set, af_property_get): Updated.
+
+2012-09-14  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Update to Unicode 6.1.0.
+
+       * src/autofit/afcjk.c (af_cjk_uniranges), src/autofit/aflatin.c
+       (af_latin_uniranges): Add and fix ranges.
+
+2012-09-14  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Pass `AF_Module' instead of `AF_Loader'.
+
+       We want to access the (not yet existing) module's global data later
+       on.
+
+       * src/autofit/afloader.c: Include `afmodule.h'.
+       (af_loader_init, af_loader_reset, af_loader_done,
+       af_loader_load_glyph): Change accordingly.
+       * src/autofit/afmodule.c (AF_ModuleRec): Move to `afmodule.h'.
+       Updated.
+
+       * src/autofit/afmodule.h: Include `afloader.h'.
+       (AF_ModuleRec): Define here.
+       * src/autofit/afloader.h (AF_Module): Define here.
+       Updated.
+
+2012-09-14  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Fix `make multi'.
+
+       * include/freetype/internal/fttrace.h: Add `afmodule'.
+       * src/autofit/afmodule.c: Include FT_INTERNAL_DEBUG_H.
+       (FT_COMPONENT): Define.
+
+2012-09-14  Werner Lemberg  <wl@gnu.org>
+
+       * src/autofit/afmodule.c: s/FT_Autofitter/AF_Module/.
+
+2012-09-12  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Minor reorganization.
+
+       * src/autofit/afglobal.c (AF_SCRIPT_LIST_DEFAULT,
+       AF_SCRIPT_LIST_NONE, AF_DIGIT): Move to...
+       * src/autofit/afglobal.h (AF_SCRIPT_DEFAULT, AF_SCRIPT_LIST_NONE,
+       AF_DIGIT): This and update code.
+
+2012-09-01  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Implement `glyph-to-script-map' property.
+
+       * include/freetype/ftautoh.h: New public header file.
+       * include/freetype/config/ftheader.h (FT_AUTOHINTER_H): New macro.
+
+       * src/autofit/afglobal.c (AF_FaceGlobalsRec): Move structure to...
+       * src/autofit/afglobal.h: This header file.
+       * src/autofit/afmodule.c: Include FT_AUTOHINTER_H.
+       (af_property_get): Handle `glyph-to-script-map'.
+
+2012-08-31  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Implement properties service framework.
+
+       No properties are added yet.
+
+       * src/autofit/afmodule.c: Include FT_SERVICE_PROPERTIES_H.
+       (af_property_set, af_property_get): New dummy functions.
+       (af_service_properties, af_services, af_get_interface): Provide
+       service setup.
+       (autofit_moduleclass): Add service interface.
+
+       * src/autofit/afpic.c: Add necessary forward declarations.
+       (autofit_module_class_pic_init): Add code for service addition.
+       (autofit_module_pic_free): Add code for service removal.
+       * src/autofit/afpic.h (AF_SERVICES_GET, AF_SERVICE_PROPERTIES_GET):
+       New macros which provide necessary syntactical sugar for PIC
+       support.
+
+2012-08-30  Werner Lemberg  <wl@gnu.org>
+
+       Implement properties to control FreeType modules.
+
+       * include/freetype/fterrdef.h (FT_Err_Missing_Property): New error
+       code.
+       * include/freetype/ftmodapi.h (FT_Property_Set, FT_Property_Get):
+       New API.
+
+       * include/freetype/internal/services/svprop.h: New file.
+       * include/freetype/internal/ftserv.h (FT_SERVICE_PROPERTIES_H): New
+       macro.
+
+       * src/base/ftobjs.c: Include FT_SERVICE_PROPERTIES_H.
+       (ft_property_do, FT_Property_Set, FT_Property_Get): New functions.
+
+2012-08-29  Werner Lemberg  <wl@gnu.org>
+
+       [docmaker] Allow `-' in tags and identifiers.
+
+       * src/tools/docmaker/content.py (re_identifier),
+       src/tools/docmaker/sources.py (re_markup_tag1, re_markup_tag2,
+       re_crossref): Add `-' in patterns.
+
+2012-08-27  Werner Lemberg  <wl@gnu.org>
+
+       [FT_CONFIG_OPTION_PIC] Fix g++ 4.6.2 compiler warnings.
+
+       * include/freetype/internal/ftdriver.h (FT_DEFINE_DRIVER),
+       include/freetype/internal/ftobjs.h (FT_DEFINE_RENDERER,
+       FT_DEFINE_MODULE), include/freetype/internal/ftserv.h
+       (FT_DEFINE_SERVICEDESCREC1, FT_DEFINE_SERVICEDESCREC2,
+       FT_DEFINE_SERVICEDESCREC3, FT_DEFINE_SERVICEDESCREC4,
+       FT_DEFINE_SERVICEDESCREC5, FT_DEFINE_SERVICEDESCREC6),
+       src/autofit/afpic.c (autofit_module_class_pic_init),
+       src/base/basepic.c (ft_base_pic_init), src/base/ftinit.c
+       (ft_create_default_module_classes), src/cff/cffparse.c
+       (FT_Create_Class_cff_field_handlers), src/cff/cffpic.c
+       (cff_driver_class_pic_init), src/pshinter/pshpic.c
+       (pshinter_module_class_pic_init), src/psnames/pspic.c
+       (psnames_module_class_pic_init), src/raster/rastpic.c
+       (ft_raster1_renderer_class_pic_init), src/sfnt/sfntpic.c
+       (sfnt_module_class_pic_init), src/sfnt/ttcmap.c
+       (FT_Create_Class_tt_cmap_classes), src/smooth/ftspic.c
+       (ft_smooth_renderer_class_pic_init), src/truetype/ttpic.c
+       (tt_driver_class_pic_init): Initialize allocation variable.
+
+2012-08-27  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix compilation warning.
+
+       * src/truetype/ttgload.c (IS_HINTED): Move macro to...
+       * src/truetype/ttobjs.h: This header file.
+
+2012-08-27  Werner Lemberg  <wl@gnu.org>
+
+       [autofit, cff, pshinter, psnames] More renamings for orthogonality.
+
+       * src/autofit/afmodule.c, src/autofit/afpic.h:
+       s/AF_AUTOFITTER_/AF_/.
+
+       * src/cff/cffdrivr.c, src/cff/cffobjs.c, src/cff/cffparse.c,
+       src/cff/cffpic.h: s/FT_CFF_/CFF_/.
+
+       * src/pshinter/pshmod.c, src/pshinter/pshpic.h:
+       s/FT_PSHINTER_/PSHINTER_/.
+
+       * src/psnames/psmodule.c, src/psnames/pspic.h:
+       s/FT_PSCMAPS/PSCMAPS_/.
+
+2012-08-27  Werner Lemberg  <wl@gnu.org>
+
+       [sfnt, truetype] More renamings for orthogonality.
+
+       * src/sfnt/sfdriver.c, src/sfnt/sfntpic.h, src/sfnt/ttcmap.c,
+       src/truetype/ttdriver.c, src/truetype/ttpic.h: s/FT_SFNT_/SFNT_/,
+       s/FT_TT_/TT_/, s/GET_CMAP_INFO_GET/CMAP_INFO_GET/.
+
+2012-08-27  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Some macro and variable renamings for orthogonality.
+
+       * include/freetype/internal/autohint.h, src/base/ftobjs.c,
+       src/autofit/afmodule.c, src/autofit/afpic.c, src/autofit/afpic.h:
+       s/SERVICE/INTERFACE/, s/service/interface/, s/Service/Interface/.
+
+2012-08-26  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #37178.
+
+       * src/base/ftobjs.c (FT_Open_Face): Initialize `error' with
+       `FT_Err_Missing_Module' before loop to indicate `no valid drivers'.
+
+2012-08-17  Werner Lemberg  <wl@gnu.org>
+
+       * src/base/ftsynth.c (FT_GlyphSlot_Oblique): Fix shear angle.
+
+       The old value was far too large (more than 20°).  The new one
+       corresponds to 12°, quite common in typography.
+
+2012-08-12  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [smooth] Fix Savannah bug #37017.
+
+       * src/smooth/ftgrays.c (gray_render_cubic): Use a different set of
+       checks when detecting super curvy splines to be split.
+
+2012-08-05  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Improve recognition of flat segments.
+
+       Problem reported by Brad Dunzer <BDunzer@extensis.com>.
+
+       * src/autofit/aflatin.c (af_latin_metrics_init_blues): We have
+       a flat segment if the horizontal distance of best on-points is
+       larger than a given threshold.
+
+2012-08-05  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Variable renamings.
+
+       * src/autofit/aflatin.c (af_latin_metrics_init_blues): Replace
+       `glyph' with `outline'.
+       s/best_first/best_contour_first/.
+       s/best_last/best_contour_last/.
+
+2012-07-31  Werner Lemberg  <wl@gnu.org>
+
+       [type1] Fix Savannah bug #37000.
+
+       * src/type1/t1load.c (parse_encoding): Fix order of checks.
+
+2012-07-17  Werner Lemberg  <wl@gnu.org>
+
+       [psaux] Fix Savannah bug #36833.
+
+       * src/psaux/t1decode.c (t1operator_seac): `seac' is not a valid
+       operator if we want metrics only.
+
+2012-07-16  Werner Lemberg  <wl@gnu.org>
+
+       [type1] Fix Savannah bug #36832.
+
+       * src/type1/t1load.c (parse_charstrings): Reject negative number of
+       glyphs.
+
+2012-07-13  Werner Lemberg  <wl@gnu.org>
+
+       [type1] Fix Savannah bug #36829.
+
+       * src/type1/t1load.c (parse_encoding): Check cursor position after
+       call to T1_Skip_PS_Token.
+
+2012-07-12  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       Revert the last commit 45337b07.
+
+       * src/base/ftstroke.c (FT_Stroker_New): Revert the previous change.
+
+2012-07-11  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [ftstroke] Fix uninitialized return value.
+
+       * src/base/ftstroke.c (FT_Stroker_New): Return FT_Err_Ok instead.
+
+2012-07-11  Werner Lemberg  <wl@gnu.org>
+
+       [smooth] Avoid memory leak in case of failure.
+
+       * src/smooth/ftsmooth.c (ft_smooth_render_generic): Use flags to
+       indicate what to clean up after finishing the function, with and
+       without errors.
+
+2012-07-09  Werner Lemberg  <wl@gnu.org>
+
+       Fix compilation with MSVC 5.0.
+
+       Problem reported by Peter Breitenlohner and Akira Kakuto.
+
+       * include/freetype/config/ftstdlib.h (ft_setjmp): Updated.
+       * src/sfnt/ttcmap.c (tt_face_build_cmaps): Remove cast.
+
+2012-07-09  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Improve debugging messages; do some code cleanup.
+
+       * src/autofit/aflatin.c (af_latin_align_linked_edge,
+       af_latin_hint_edges): Synchronize with formatting used in the
+       ttfautohint project.
+
+2012-07-07  Gilles Espinasse  <g.esp@free.fr>
+
+       Fix strict-aliasing warning.
+
+       * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Avoid double cast.
+
+2012-07-07  Dave Thomas  <dave.thomas@metaforic.com>
+
+       [ARM] Fix FT_MulFix_arm.
+
+       * include/freetype/config/ftconfig.h (FT_MulFix_arm) [__arm__]:
+       Avoid ADDS instruction to clobber condition codes.
+
+2012-07-06  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Do some code cleanup.
+
+       * src/autofit/afglobal.c (af_face_globals_new): Simplify.
+
+       * src/autofit/afhints.c: Use `FT_TRACE7' instead of `printf'
+       everywhere.
+       (FT_COMPONENT): New macro.
+       (af_glyph_hints_done): Simplify.
+
+       * include/freetype/internal/fttrace.h: Updated.
+
+2012-07-05  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Improve output of debugging information.
+
+       * src/autofit/afhints.c (af_glyph_hints_dump_segments): Print more
+       data; report no data.
+       (af_glyph_hints_dump_edges): Report no data.
+
+2012-07-04  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Fix Savannah bug #36091.
+
+       * src/autofit/aflatin.c (af_latin_metrics_init_blues),
+       src/autofit/aflatin2.c (af_latin2_metrics_init_blues): Change the
+       constraint for testing round vs. flat segment: Accept either a
+       small distance or a small angle.
+
+2012-07-04  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Beautify blue zone tracing.
+
+       * src/autofit/aflatin.c (af_latin_metrics_init_blues),
+       src/autofit/aflatin2.c (af_latin2_metrics_init_blues): Implement it.
+
+2012-07-03  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Quantize stem widths.
+
+       * src/autofit/afangles.c (af_sort_widths): Rename to...
+       (af_sort_and_quantize_widths): This.
+       Add code to avoid stem widths which are almost identical.
+       * src/autofit/aftypes.h, src/autofit/aflatin.c, src/autofit/afcjk.c:
+       Updated.
+
+2012-07-03  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Minor speed-up.
+
+       * src/autofit/afangles (af_sort_pos, af_sort_widths): Don't swap
+       elements if they are equal.
+
+2012-06-30  Gilles Espinasse  <g.esp@free.fr>
+
+       Fix `checking if gcc static flag -static works' test.
+
+       On my linux build tree, I receive yes answer in in every package I
+       build except freetype for this test checking if gcc static flag
+       `-static' works
+
+       On freetype, no is received, unless bzip2 and zlib are disabled using
+
+         ./configure --without-bzip2 --without-zlib
+
+       The reason is that bzip2 and zlib tests add `-lz' and `-lbz2' to
+       LDFLAGS and this broke static flag test.
+
+       * builds/unix/configure.raw: Update CFLAGS and LDFLAGS only after
+       LT_INIT has run.
+
+2012-06-28  Infinality  <infinality@infinality.net>
+
+       [truetype] Fix various artifacts.
+
+       Verdana was broken in the original Infinality commit.  Also
+       includes other minor fixes.
+
+       * src/truetype/ttsubpix.h: Updated.  Removed unused macros.
+       (RASTERIZER_35_Rules): Add Verdana.
+       (SKIP_NONPIXEL_Y_MOVES_Rules): Add Tahoma `s'.
+       (MIRP_CVT_ZERO_Rules): Remove Verdana.
+       (ALWAYS_SKIP_DELTAP_Rules): Add Russian char 0x438.
+       (COMPATIBLE_WIDTHS_Rules): Rearrange some rules.
+       (X_SCALING_Rules): Adjust Verdana `a' at 12 and 13 ppem.
+
+       * src/truetype/ttsubpix.c: Updated.
+       (sph_set_tweaks): Re-execute fpgm always.
+
+2012-06-28  Gilles Espinasse  <g.esp@free.fr>
+
+       Fix CFLAGS and LDFLAGS share configure test.
+
+       * builds/unix/configure.raw: Fix typo.
+
+2012-06-28  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Set the `subpixel_positioned' flag unconditionally.
+
+       This is how the code currently behaves.
+
+       * src/truetype/ttgload.c (tt_loader_init): Do it.
+
+2012-06-27  Werner Lemberg  <wl@gnu.org>
+
+       Fix conditional compilation.
+
+       * src/base/basepic.c: Use FT_CONFIG_OPTION_MAC_FONTS.
+
+2012-06-27  Werner Lemberg  <wl@gnu.org>
+
+       Fix conditional compilation.
+
+       * include/freetype/internal/ftcalc.h (FT_MulDiv_No_Round): Don't
+       enclose with `TT_USE_BYTECODE_INTERPRETER'; we now need the function
+       elsewhere also.
+
+       * src/autofit/afcjk.h: Use AF_CONFIG_OPTION_CJK.
+
+       * src/truetype/ttgload.c (tt_loader_init): Fix compiler warning.
+
+       * src/truetype/ttinterp.c (Ins_MSIRP): Fix compiler warning.
+
+       * src/truetype/ttinterp.h: Use
+       TT_CONFIG_OPTION_BYTECODE_INTERPRETER.
+
+2012-06-26  Infinality  <infinality@infinality.net>
+
+       [truetype] Remove unused rounding functionality.
+
+       The subpixel hinting patch contained the concept of an adjustable
+       number of gridlines per pixel.  This is no longer used due to x
+       being completely ignored instead.  This will return some of the
+       code to its existing state prior to the original Infinality
+       commit.
+
+       * include/freetype/internal/ftobjs.h (FT_PIX_FLOOR_GRID,
+       FT_PIX_ROUND_GRID, FT_PIX_CEIL_GRID): Removed.
+
+       * src/truetype/ttinterp.c: Updated.
+       (Round_None, Round_To_Grid, Round_To_Half_Grid, Round_Down_To_Grid,
+       Round_Up_To_Grid, Round_To_Double_Grid, Round_Super, Round_Super_45,
+       SetSuperRound): Remove parameter to handle the number of grid lines per
+       pixel.
+       (SET_SuperRound, ROUND_None, CUR_Func_round): Updated.
+       (DO_SROUND, DOS45ROUND, DO_ODD, DO_EVEN): Updated.
+       (DO_ROUND, DO_NROUND): Updated.
+       (Move_Zp2_Point, Ins_SHPIX, Ins_MSIRP, Ins_MDAP, Ins_MIAP,
+       Ins_MDRP, Ins_MIRP): Perform Round_None instead of calling a modified
+       rounding function.  Remove gridlines_per_pixel.  Create a local
+       variable to store control value cutin. Simplify the conditional for
+       ignore_x_mode.  Adjust rounding calls to pass only two values.
+
+2012-06-25  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Fix Savannah bug #36705.
+
+       Handle numbers like 2.001 correctly.
+
+       * src/cff/cffparse.c (cff_parse_real): Avoid negative values for
+       `shift'.
+
+2012-06-18  Infinality  <infinality@infinality.net>
+
+       [truetype] Support subpixel hinting.
+
+       This is the large, famous `Infinality' patch to support ClearType
+       bytecode which has been available from
+       http://www.infinality.net/blog/ for some time, and which has been
+       refined over the last years.  While still experimental, it is now
+       mature enough to be included directly into FreeType.
+
+       Most of the code is based on the ClearType whitepaper written by
+       Greg Hitchcock
+
+         http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx
+
+       which gives a detailed overview of the necessary changes to the
+       Microsoft rasterizer so that older fonts are supported.  However, a
+       lot of details are still missing, and this patches provides a
+       framework to easily handle rendering issues down to the glyph level
+       of certain fonts.
+
+       Note that ClearType support is not completely implemented!  In
+       particular, full support for the options `compatible_widths',
+       `symmetrical_smoothing, and `bgr' (via the GETINFO bytecode
+       instruction) is missing.
+
+       * src/truetype/ttsubpix.c: New file, providing code to handle
+       `tweaks', this is, rules for certain glyphs in certain fonts
+       (including wildcards) which need a special treatment.
+
+       * src/truetype/ttsubpix.h: New file, holding the tweaking rules.
+
+       * include/freetype/config/ftoption.h, src/devel/ftoption.h
+       (TT_CONFIG_OPTION_SUBPIXEL_HINTING): New macro.
+
+       * include/freetype/internal/ftobjs.h (FT_PIX_FLOOR_GRID,
+       FT_PIX_ROUND_GRID, FT_PIX_CEIL_GRID): New macros.
+
+       * src/truetype/truetype.c [TT_USE_BYTECODE_INTERPRETER]: Include
+       `ttsubpix.c'.
+
+       * src/truetype/ttgload.c: Include `ttsubpix.h'.
+       [All changes below are guarded by TT_CONFIG_OPTION_SUBPIXEL_HINTING.]
+
+       (tt_get_metrics): Set tweak flags.
+       (TT_Hint_Glyph): Call `FT_Outline_EmboldenXY' if necessary.
+       (TT_Process_Simple_Glyph): Compensate emboldening if necessary.
+       (compute_glyph_metrics): Handle `compatible widths' option.
+       (tt_loader_init): Handle ClearType GETINFO information bits.
+
+       * src/truetype/rules.mk (TT_DRC_SRC): Updated.
+
+       * src/truetype/ttinterp.c: Include `ttsubpix.h'.
+       [Where necessary, changes below are guarded by
+       TT_CONFIG_OPTION_SUBPIXEL_HINTING.]
+
+       (Direct_Move, Direct_Move_X): Extended.
+       (Round_None, Round_To_Grid, Round_To_Half_Grid, Round_Down_To_Grid,
+       Round_Up_To_Grid, Round_To_Double_Grid, Round_Super, Round_Super_45,
+       SetSuperRound): Add parameter to handle the number of grid lines per
+       pixel.
+       (SET_SuperRound, ROUND_None, CUR_Func_round): Updated.
+       (DO_SROUND, DOS45ROUND, DO_ODD, DO_EVEN): Updated.
+       (DO_ROUND, DO_NROUND): Updated.
+       (DO_RS): Take care of `Typeman' bytecode patterns.
+       (Ins_FDEF): Add some debugging code.  Commented out.
+       (Ins_ENDF): Restore state.
+       (Ins_CALL, Ins_LOOPCALL): Handle inline delta functions.
+       (Ins_MD): Handle `Vacuform' rounds.
+       (Move_Zp2_Point, Ins_SHPIX, Ins_MSIRP, Ins_MDAP, Ins_MIAP,
+       Ins_MDRP, Ins_MIRP): Handle tweaks.
+       (Ins_ALIGNRP): Add tweak guard.
+       (Ins_IUP, Ins_DELTAP): Handle tweaks.
+       (Ins_GETINFO): Handle new ClearType bits.
+       (TT_RunIns): Handle tweaks.
+
+       * src/truetype/ttinterp.h: Updated.
+       (SPH_TweakRule, SPH_ScaleRule): New structures for tweaks.
+       (TT_ExecContextRec): Add members for subpixel hinting support.
+
+       * src/truetype/ttobjs.h (TT_DefRecord): Add `inline_delta' member.
+
+2012-06-15  Werner Lemberg  <wl@gnu.org>
+
+       * Version 2.4.10 released.
+       =========================
+
+
+       Tag sources with `VER-2-4-10'.
+
+       * docs/VERSION.DLL: Update documentation and bump version number to
+       2.4.10.
+
+       * README, Jamfile (RefDoc),
+       builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
+       builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
+       builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
+       builds/win32/visualc/freetype.dsp,
+       builds/win32/visualc/freetype.vcproj,
+       builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
+       builds/win32/visualce/freetype.vcproj,
+       builds/win32/visualce/index.html,
+       builds/wince/vc2005-ce/freetype.vcproj,
+       builds/wince/vc2005-ce/index.html,
+       builds/wince/vc2008-ce/freetype.vcproj,
+       builds/wince/vc2008-ce/index.html: s/2.4.9/2.4.10/, s/249/2410/.
+
+       * include/freetype/freetype.h (FREETYPE_PATCH): Set to 10.
+
+       * builds/unix/configure.raw (version_info): Set to 15:0:9.
+
+2012-06-15  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Improve spacing.
+
+       * docs/CHANGES: Updated.
+
+2012-06-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       * builds/exports.mk: Add CCexe_CFLAGS and CCexe_LDFLAGS.
+
+       to pass special compiler/linker flags under cross development.
+       Suggested by Savannah bug #36367.
+
+       ChangeLog on 2010-07-15 saying as they were removed was wrong
+       for the official trunk of FreeType2.  This commit is the first
+       introduction of them.
+
+2012-06-14  Werner Lemberg  <wl@gnu.org>
+
+       * docs/CHANGES: Updated.
+
+2012-06-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [truetype] Add new versions of NEC FA family to tricky font list.
+
+       NEC FA family dated in 1996 have different checksum.
+       Reported by Johnson Y. Yan <yinsen_yan@foxitsoftware.com>; see
+
+         http://lists.gnu.org/archive/html/freetype-devel/2012-06/msg00023.html
+
+       * src/truetype/ttobjs.c (tt_check_trickyness_sfnt_ids): 4 sets
+       of fpgm & prep table checksums for FA-Gothic, FA-Minchou,
+       FA-RoundedGothicM, FA-RoundedGothicB are added.  The family
+       names in sample PDF are truncated, thus the list of the
+       family names in tt_check_trickyness_family() is not updated yet.
+
+2012-06-06  Werner Lemberg  <wl@gnu.org>
+
+       [ftraster] Fix rounding issue causing visual artifacts.
+
+       Problem reported by jola <hans-jochen.lau@lhsystems.com>; see
+
+         http://lists.gnu.org/archive/html/freetype-devel/2012-05/msg00036.html
+
+       * src/raster/ftraster.c (SMulDiv_No_Round): New macro.
+       (Line_Up): Use it.
+       * src/raster/ftmisc.h (FT_MulDiv_No_Round): Copied from `ftcalc.c'.
+
+2012-05-28  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       * src/base/ftoutln.c (FT_Outline_Get_Orientation): Simplify.
+
+       We now use the cross product of the direction vectors to compute the
+       outline's orientation.
+
+2012-05-28  Werner Lemberg  <wl@gnu.org>
+
+       * docs/CHANGES: Updated.
+
+2012-05-28  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       New function FT_Outline_EmboldenXY.
+
+       * include/freetype/ftoutln.h (FT_Outline_EmboldenXY): Define it.
+
+       * src/base/ftoutln.c (FT_Outline_EmboldenXY): Implement it, using a
+       simplified embolding algorithm.
+       (FT_Outline_Embolden): Make it a special case of
+       `FT_Outline_EmboldenXY'
+
+2012-05-07  Werner Lemberg  <wl@gnu.org>
+
+       [type1] Fix Savannah bug #36386.
+
+       * src/type1/t1load.c (t1_load_keyword): Ignore keyword if context is
+       not valid.
+
+2012-04-07  Werner Lemberg  <wl@gnu.org>
+
+       Remove compiler warning.
+
+       * src/truetype/ttgload.c (TT_Load_Glyph)
+       [!TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: Access `glyph->face' directly.
+
+2012-03-28  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Properly copy scaler flags to script metrics object.
+
+       Without this patch, only the dummy and cjk autohinter modules get
+       them (since they copy the whole scaler object).
+
+       * src/autofit/aflatin.c (af_latin_metrics_scale),
+       src/autofit/aflatin2.c (af_latin2_metrics_scale): Implement it.
+
+2012-03-22  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [bdflib] Remove redundant macro.
+
+       * src/bdf/bdflib.c (isdigok): Remove and replace with sbitset, which
+       is exactly the same.
+
+2012-03-20  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [configure] Fix Savannah bug #35644.
+
+       * builds/unix/configure.raw: Check `-ansi' flag works even if gcc
+       is used.  Bionic libc headers for Android lose the consistency
+       when they are parsed with __STDC_VERSION__ older than 199901L or
+       __STRICT_ANSI__.
+
+2012-03-20  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Improvement to Savannah bug #35656.
+
+       * src/bdf/bdflib.c (isdigok): Add cast, as suggested in report.
+
+2012-03-17  Chris Liddell  <chris.liddell@artifex.com>
+
+       [type1] Fix Savannah bug #35847.
+
+       * src/type1/t1load.c (parse_subrs): Fix the loop exit condition;
+       we want to exit when we have run out of data.
+
+2012-03-16  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Really fix Savannah bug #35658.
+
+       * src/bdf/bdflib.c (_bdf_list_split): Add one more `field' initializer.
+
+2012-03-14  Yann Droneaud  <yann@droneaud.fr>
+
+       [sfnt] Make arrays static like all others.
+
+       * src/sfnt/ttload.c (tt_face_load_maxp, tt_face_load_os2),
+       src/sfnt/ttmtx.c (tt_face_load_hhea): Add `static' keyword to frame
+       fields.
+
+2012-03-14  Huw Davies  <huw@codeweavers.com>
+
+       [sfnt] A refinement of the previous commit.
+
+       * src/sfnt/sfobjs.c (tt_name_entry_ascii_from_utf16,
+       tt_name_entry_ascii_from_other): Stop at null byte.
+
+2012-03-14  Huw Davies  <huw@codeweavers.com>
+
+       [sfnt] Add `name' table compatibility to MS Windows.
+
+       * src/sfnt/sfobjs.c (tt_name_entry_ascii_from_utf16,
+       tt_name_entry_ascii_from_other): Don't replace `\0' with question
+       marks when converting strings.
+
+2012-03-14  Werner Lemberg  <wl@gnu.org>
+
+       [type1] Fix Savannah bug #35833.
+
+       Based on the patch given in the bug report.
+
+       * src/type1/t1load.c (IS_INCREMENTAL): New macro.
+       (read_binary_data): Add parameter `incremental'.
+       Update all callers using `IS_INCREMENTAL'.
+
+2012-03-11  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Return correct linear advance width values.
+
+       This was quite a subtle bug which accidentally showed up with glyph
+       `afii10023' of arial.ttf (version 2.76).  This glyph is a composite;
+       the first component, `E', has an advance width of 1366 font units,
+       while the advance width of the composite itself (which looks like
+       uppercase `E' with dieresis) is 1367 font units.  I think this is
+       actually a bug in the font itself, because there is no reason that
+       this glyph has not the same width as uppercase `E' without the
+       dieresis.  Anyway, it helped identify this problem.
+
+       Using the TrueType hinter, the correct value (1367) of `afii10023'
+       was returned, but the autohinter mysteriously returned 1366.
+
+       Digging in the code showed that the autohinter recursively calls
+       FT_Load_Glyph to load the glyph, adding the FT_LOAD_NO_SCALE load
+       flag.  However, the `linearHoriAdvance' field is still returned as a
+       scaled value.  To avoid scaling twice, the old code in autofit reset
+       `linearHoriAdvance', using the `horiAdvance' field.  This seemed to
+       work since FT_LOAD_NO_SCALE was in use, but it failed actually,
+       because `horiAdvance' is defined as the distance of the first
+       subglyph's phantom points, which in turn are initialized using the
+       advance width of the first subglyph.  And as the given example
+       shows, these widths can differ.
+
+       * src/autofit/afloader.c (af_loader_load_g): Temporarily set
+       FT_LOAD_LINEAR_DESIGN while calling FT_Load_Glyph to get unscaled
+       values for the linear advance widths.
+
+2012-03-10  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix SSW instruction.
+
+       * src/truetype/ttinterp.c (DO_SSW): SSW *does* use font units.  For
+       verification, it took some time to find a font which actually uses
+       this instruction.
+
+2012-03-09  Vinnie Falco  <vinnie.falco@gmail.com>
+
+       Prepare source code for amalgamation.
+
+       * include/freetype/freetype.h: Swap order of preprocessor blocks.
+
+2012-03-08  Werner Lemberg  <wl@gnu.org>
+
+       * Version 2.4.9 released.
+       =========================
+
+
+       Tag sources with `VER-2-4-9'.
+
+       * docs/CHANGES: Updated.
+
+       * docs/VERSION.DLL: Update documentation and bump version number to
+       2.4.9.
+
+       * README, Jamfile (RefDoc),
+       builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
+       builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
+       builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
+       builds/win32/visualc/freetype.dsp,
+       builds/win32/visualc/freetype.vcproj,
+       builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
+       builds/win32/visualce/freetype.vcproj,
+       builds/win32/visualce/index.html,
+       builds/wince/vc2005-ce/freetype.vcproj,
+       builds/wince/vc2005-ce/index.html,
+       builds/wince/vc2008-ce/freetype.vcproj,
+       builds/wince/vc2008-ce/index.html: s/2.4.8/2.4.9/, s/248/249/.
+
+       * include/freetype/freetype.h (FREETYPE_PATCH): Set to 9.
+
+       * builds/unix/configure.raw (version_info): Set to 14:1:8.
+
+2012-03-08  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Add missing overflow check.
+
+       * src/bdf/bdflib.c (_bdf_parse_glyphs) <BITMAP>: Add threshold for
+       `glyph->bpr'.
+
+2012-03-07  Vinnie Falco  <vinnie.falco@gmail.com>
+
+       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-03  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #35660.
+
+       For some divisions, we use casts to 32bit entities.  Always guard
+       against division by zero with these casts also.
+
+       * src/base/ftcalc.c (ft_div64by32): Remove redundant cast.
+       (FT_MulDiv, FT_MulDiv_No_Round): Add 32bit cast.
+       (FT_DivFix): Add 32bit cast (this omission triggered the bug).
+
+2012-03-03  Werner Lemberg  <wl@gnu.org>
+
+       [psaux] Fix handling of track kerning.
+
+       * src/psaux/afmparse.c (afm_parse_track_kern): Don't inverse sign
+       for `min_kern'.  It is indeed quite common that track kerning
+       *increases* spacing for very small sizes.
+
+2012-03-02  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix Savannah bug #35689.
+
+       * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Check first outline
+       point.
+
+2012-03-01  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #35656.
+
+       * src/bdf/bdflib.c (_bdf_parse_glyphs) <_BDF_BITMAP>: Check validity
+       of nibble characters instead of accessing `a2i' array.
+
+2012-03-01  Werner Lemberg  <wl@gnu.org>
+
+       [winfonts] Fix Savannah bug #35659.
+
+       * src/winfonts/winfnt.c (FNT_Face_Init): Check number of glyphs.
+
+2012-03-01  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #35658.
+
+       * src/bdf/bdflib.c (_bdf_list_split): Initialize `field' elements
+       properly.
+
+2012-03-01  Werner Lemberg  <wl@gnu.org>
+
+       [psaux] Fix Savannah bug #35657.
+
+       If in function `skip_spaces' the routine `skip_comment' comes to the
+       end of buffer, `cur' is still increased by one, so we need to check
+       for `p >= limit' and not `p == limit'.
+
+       * src/psaux/psconv.c (PS_Conv_Strtol, PS_Conv_ToFixed,
+       PS_Conv_ASCIIHexDecode, PS_Conv_EexecDecode): Fix boundary checking.
+
+2012-03-01  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix Savannah bug #35646.
+
+       * src/truetype/ttinterp.c (Ins_MIRP): Typo, present since ages.  The
+       code is now in sync with the other operators (e.g. MSIRP) which
+       modify twilight points.
+
+2012-03-01  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #35643.
+
+       * src/bdf/bdflib.c (_bdf_list_ensure): Bring code in sync with
+       comment before `_bdf_list_split', this is, really allocate at least
+       five `field' elements.
+
+2012-03-01  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #35641.
+
+       * src/bdf/bdflib.c (_bdf_parse_glyphs) <DWIDTH, BBX>: Abort if
+       _BDF_ENCODING isn't set.  We need this because access to the `glyph'
+       variable might be undefined otherwise.
+
+2012-03-01  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix Savannah bug #35640.
+
+       * src/truetype/ttinterp.c (SkipCode, TT_RunIns): Fix boundary check
+       for NPUSHB and NPUSHW instructions.
+
+2012-02-29  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix Savannah bug #35601.
+
+       * src/truetype/ttinterp.c (Ins_SHZ): Use number of points instead of
+       last point for loop.
+       Also remove redundant boundary check.
+
+2012-02-29  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Remove redundant check.
+
+       * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Remove redundant
+       second check for ordered contour start points.
+
+2012-02-29  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Make SHC instruction behave similar to MS rasterizer.
+
+       * src/truetype/ttinterp.c (Ins_SHC): Handle virtual contour in
+       twilight zone.
+
+2012-02-29  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       Avoid modulo operators against a power-of-two denominator.
+
+       * src/afcjk.c (af_hint_normal_stem), src/base/ftoutln.c
+       (ft_contour_has), src/cff/cffgload.c (cff_decoder_parse_charstrings)
+       <cff_op_vvcurveto, cff_op_hhcurveto, cff_op_hvcurveto>,
+       src/gxvalid/gxvcommn.c (GXV_32BIT_ALIGNMENT_VALIDATE),
+       src/gxvalid/gxvfeat.c (gxv_feat_setting_validate): Replace `%' with
+       `&' operator.
+
+2012-02-29  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Don't synchronize digit widths for light rendering mode.
+
+       We don't hint horizontally in this mode.
+
+       * src/autofit/afloader.c (af_loader_load_g) <Hint_Metrics>:
+       Implement it.
+
+2012-02-26  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [type42] Minor code optimization (again).
+
+       * src/type42/t42parse.c (t42_parse_sfnts): Simplify previous change.
+
+2012-02-26  Mateusz Jurczyk  <mjurczyk@google.com>
+           Werner Lemberg  <wl@gnu.org>
+
+       [smooth] Fix Savannah bug #35604.
+
+       * src/smooth/ftsmooth.c (ft_smooth_render_generic): Use `FT_Pos'
+       instead of `FT_UInt' for some variables and update comparisons
+       accordingly.  A detailed analysis can be found in the bug report.
+
+2012-02-26  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [type42] Minor code optimization.
+
+       * src/type42/t42parse.c (t42_parse_sfnts): Use bitmask instead of
+       modulo operator.
+
+2012-02-26  Werner Lemberg  <wl@gnu.org>
+
+       * docs/CHANGES: Updated.
+
+2012-02-26  Werner Lemberg  <wl@gnu.org>
+
+       [type1] Fix Savannah bug #35608.
+
+       * src/type1/t1parse.c (T1_Get_Private_Dict): Reject too short
+       dictionaries.
+
+2012-02-26  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Support `ENCODING -1 <n>' format.
+
+       * src/bdf/bdflib.c (_bdf_parse_glyphs) <ENCODING>: Implement it.
+
+2012-02-26  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #35607.
+
+       * src/bdf/bdflib.c (_bdf_parse_glyphs) <ENCODING>: Normalize
+       negative encoding values.
+
+2012-02-26  Werner Lemberg  <wl@gnu.org>
+
+       [type1] Fix Savannah bug #35606.
+
+       * src/type1/t1load.c (parse_subrs): Add proper guards for `strncmp'.
+
+       * src/psaux/psobjs.c (ps_parser_skip_PS_token): Emit error message
+       only if cur < limit.
+
+2012-02-25  Werner Lemberg  <wl@gnu.org>
+
+       [pcf] Fix Savannah bug #35603.
+
+       * src/pcf/pcfread.c (pcf_get_properties): Assure final zero byte in
+       `strings' array.
+
+2012-02-25  Werner Lemberg  <wl@gnu.org>
+
+       [type42] Fix Savannah bug #35602.
+
+       * src/type42/t42parse.c (t42_parse_sfnts): Check `string_size' more
+       thoroughly.
+
+2012-02-25  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bugs #35599 and #35600.
+
+       * src/bdf/bdflib.c (ACMSG16): New warning message.
+       (_bdf_parse_glyphs) <_BDF_BITMAP>: Check line length.
+
+2012-02-24  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bugs #35597 and #35598.
+
+       * src/bdf/bdflib.c (_bdf_is_atom): Fix handling of property value.
+
+2012-02-24  Vinnie Falco  <vinnie.falco@gmail.com>
+
+       Prepare source code for amalgamation (6/6).
+
+       * src/cff/cffdrivr.c: s/Load_Glyph/cff_glyph_load/.
+
+       * src/cid/cidload.c: s/parse_font_matrix/cid_parse_font_matrix/.
+       s/t1_init_loader/cid_init_loader/.
+       s/t1_done_loader/cid_done_loader/.
+
+       * src/pxaux/t1cmap.c: s/t1_get_glyph_name/psaux_get_glyph_name/.
+
+       * src/truetype/ttdriver.c: s/Load_Glyph/tt_glyph_load/.
+
+       * src/type1/t1load.c: s/parse_font_matrix/t1_parse_font_matrix/.
+
+2012-02-24  Vinnie Falco  <vinnie.falco@gmail.com>
+
+       Prepare source code for amalgamation (5/6).
+
+       * include/freetype/fterrors.h: Undefine FT_KEEP_ERR_PREFIX after
+       using it.
+
+2012-02-22  Vinnie Falco  <vinnie.falco@gmail.com>
+
+       Prepare source code for amalgamation (4/6).
+
+       * src/smooth/ftgrays.c, src/raster/ftraster.c: Undefine RAS_ARG,
+       RAS_ARGS, RAS_VAR, and RAS_VARS before defining it.
+
+       * src/smooth/ftgrays.c: s/TRaster/black_TRaster/,
+       s/PRaster/black_PRaster/.
+       * src/raster/ftraster.c: s/TRaster/gray_TRaster/,
+       s/PRaster/gray_PRaster/.
+
+2012-02-20  Vinnie Falco  <vinnie.falco@gmail.com>
+
+       Prepare source code for amalgamation (3/6).
+
+       * src/smooth/ftgrays.c: s/TWorker/black_TWorker/,
+       s/PWorker/black_PWorker/.
+       * src/raster/ftraster.c: s/TWorker/gray_TWorker/,
+       s/PWorker/gray_PWorker/.
+
+2012-02-20  Vinnie Falco  <vinnie.falco@gmail.com>
+
+       Prepare source code for amalgamation (2/6).
+
+       * src/smooth/ftgrays.c, src/raster/ftraster.c: Undefine FLOOR,
+       CEILING, TRUNC, and SCALED before defining it.
+
+2012-02-20  Vinnie Falco  <vinnie.falco@gmail.com>
+
+       Prepare source code for amalgamation (1/6).
+
+       See discussion starting at
+
+         http://lists.gnu.org/archive/html/freetype-devel/2012-01/msg00037.html
+
+       * src/smooth/ftgrays.c: s/TBand/gray_TBand/.
+       * src/raster/ftraster.c: s/TBand/black_TBand/.
+
+2012-02-17  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [autofit] Fix outline flags.
+
+       * src/autofit/afloader.c (af_loader_load_g): Don't reassign
+       `outline.flags' so that this information is preserved.  See
+       discussion starting at
+
+         http://lists.gnu.org/archive/html/freetype-devel/2012-02/msg00046.html
+
+2012-02-11  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix Savannah bug #35466.
+
+       Jump instructions are now bound to the current function.  The MS
+       Windows rasterizer behaves the same, as confirmed by Greg Hitchcock.
+
+       * src/truetype/ttinterp.h (TT_CallRec): Add `Cur_End' element.
+       * src/truetype/ttobjs.h (TT_DefRecord): Add `end' element.
+
+       * src/truetype/ttinterp.c (DO_JROT, DO_JMPR, DO_JROF): Check upper
+       bound of jump address.
+       (Ins_FDEF, Ins_CALL, Ins_LOOPCALL, Ins_UNKNOWN, TT_RunIns): Updated.
+
+2012-02-11  Werner Lemberg  <wl@gnu.org>
+
+       We don't use `extensions'.
+
+       * include/freetype/internal/ftobjs.h (FT_DriverRec): Remove
+       `extensions' field.
+
+2012-02-11  Werner Lemberg  <wl@gnu.org>
+
+       Clean up `generic' fields.
+
+       * include/freetype/internal/ftobjs.h (FT_ModuleRec, FT_LibraryRec):
+       Remove `generic' field since users can't access it.
+
+       * src/base/ftobjs.c (FT_Done_GlyphSlot): Call `generic.finalizer' as
+       advertised in the documentation of FT_Generic.
+       (Destroy_Module, FT_Done_Library): Updated to changes in `ftobjs.h'.
+
+2012-02-07  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Harmonize function arguments.
+
+       * src/autofit/afloader.c, src/autofit/afloader.h: Use `FT_Int32' for
+       `load_flags'.
+
+2012-02-07  Werner Lemberg  <wl@gnu.org>
+
+       * src/cff/cffobjs.c (cff_face_init): Remove unnecessary casts.
+
+2012-01-17  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [gxvalid] Fix Savannah bug #35286.
+
+       Patch submitted by anonymous reporter.
+
+       * src/gxvalid/gxvcommn.c (gxv_XStateTable_subtable_setup):
+       gxv_set_length_by_ulong_offset() must be called with 3, not 4,
+       the number of the subtables in the state tables; classTable,
+       stateArray, entryTable.
+
+2012-01-17  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [raccess] Modify for PIC build.
+
+       Based on the patch provided by Erik Dahlstrom <ed@opera.com>,
+       http://lists.gnu.org/archive/html/freetype-devel/2012-01/msg00010.html
+
+       Also `raccess_guess_table[]' and `raccess_rule_by_darwin_vfs()'
+       are renamed with `ft_' suffixes.
+
+       * src/base/ftbase.h: `raccess_rule_by_darwin_vfs()' is renamed
+       to `ft_raccess_rule_by_darwin_vfs()'.
+       * src/base/ftobjs.c: Ditto.
+
+       * src/base/ftrfork.c: Declarations of FT_RFork_Rule,
+       raccess_guess_rec, are moved to...
+       * include/freetype/internal/ftrfork.h: Here.
+
+       * include/freetype/internal/ftrfork.h:
+       FT_RFORK_RULE_ARRAY_{BEGIN,ENTRY,END} macros are defined
+       to replace raccess_guess_table[] in both of PIC and non-PIC
+       modes.
+       * src/base/ftrfork.c: raccess_guess_table[] array is rewritten
+       by FT_RFORK_RULE_ARRAY_{BEGIN,ENTRY,END}.
+
+       * src/base/basepic.h (BasePIC): Add `ft_raccess_guess_table'
+       storage.  (FT_RACCESS_GUESS_TABLE_GET): New macro to retrieve
+       the function pointer from `ft_raccess_guess_table' storage in
+       `BasePIC' structure.
+       * src/base/ftrfork.c (FT_Raccess_Guess): Rewritten with
+       FT_RACCESS_GUESS_TABLE_GET.
+       (raccess_get_rule_type_from_rule_index): Add `library' as the
+       first argument to the function, to retrieve the storage of
+       `ft_raccess_guess_table' from it.  Also `raccess_guess_table'
+       is replaced by FT_RACCESS_GUESS_TABLE_GET.
+       (ft_raccess_rule_by_darwin_vfs): Ditto.
+
+2012-01-16  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Remove trailing spaces.
+
+2012-01-16  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Formatting PIC related sources.
+
+       * src/autofit/afpic.c: Harmonize to FT2 coding conventions.
+       * src/base/basepic.c: Ditto.
+       * src/base/ftpic.c: Ditto.
+       * src/cff/cffpic.c: Ditto.
+       * src/pshinter/pshpic.c: Ditto.
+       * src/psnames/pspic.c: Ditto.
+       * src/raster/rastpic.c: Ditto.
+       * src/sfnt/sfntpic.c: Ditto.
+       * src/smooth/ftspic.c: Ditto.
+       * src/truetype/ttpic.c: Ditto.
+
+2012-01-16  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [autofit] Fix the inclusion of `aflatin2.h' in PIC file.
+
+       * src/autofit/afpic.c: Include `aflatin2.h' when
+       FT_OPTION_AUTOFIT2 is defined, as afglobal.c does so.
+       Unconditionally inclusion causes declared but unimplemented
+       warning by GCC 4.6.
+
+2012-01-16  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [cff] Remove redundant declarations of cff_cmap_XXX_class_rec.
+
+       * src/cff/cffpic.c: The declarations of
+       FT_Init_Class_cff_cmap_encoding_class_rec() and
+       FT_Init_Class_cff_cmap_unicode_class_rec() are removed.
+       They can be obtained by the inclusion of cffcmap.h.
+       cffcmap.h invokes FT_DECLARE_CMAP_CLASS() and it declares
+       FT_Init_Class_cff_cmap_encoding_class_rec() etc in PIC mode.
+
+2012-01-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Fix redundant declaration warning in PIC mode.
+
+       Originally FT_DEFINE_{DRIVER,MODULE,RENDERER}() macros were
+       designed to declare xxx_pic_{free,init} by themselves.
+       Because these macros are used at the end of the module
+       interface (e.g. ttdriver.c) and the wrapper source to build
+       a module as a single object (e.g. truetype.c) includes
+       the PIC file (e.g. ttpic.c) before the module interface,
+       these macros are expanded AFTER xxx_pic_{free,init} body
+       when the modules are built as single object.
+       The declaration after the implementation causes the redundant
+       declaration warnings, so the declarations are moved to module
+       PIC headers (e.g. ttpic.h).  Separating to other header files
+       are needed for multi build.
+
+       * include/freetype/internal/ftdriver.h (FT_DEFINE_DRIVER):
+       Remove class_##_pic_free and class_##_pic_init declarations.
+       * include/freetype/internal/ftobjs.h (FT_DEFINE_RENDERER,
+       FT_DEFINE_MODULE): Ditto.
+
+       * src/base/basepic.h: Insert a comment and fix coding style.
+       * src/autofit/afpic.h: Declare autofit_module_class_pic_{free,
+       init}.
+       * src/cff/cffpic.h: Declare cff_driver_class_pic_{free,init}.
+       * src/pshinter/pshpic.h: Declare pshinter_module_class_pic_{free,
+       init}.
+       * src/psnames/pspic.h: Declare psnames_module_class_pic_{free,
+       init}.
+       * src/raster/rastpic.h: Declare
+       ft_raster{1,5}_renderer_class_pic_{free,init}
+       * src/sfnt/sfntpic.h: Declare sfnt_module_class_pic_{free,init}.
+       * src/smooth/ftspic.h: Declare
+       ft_smooth_{,lcd_,lcdv_}renderer_class_pic_{free,init}.
+       * src/truetype/ttpic.h: Declare tt_driver_class_pic_{free,init}.
+
+2012-01-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Make pspic.c to include module error header to fix multi build.
+
+       * src/psnames/pspic.c: Include `psnamerr.h'.
+
+2012-01-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [base] Fix a dereference of uninitialized variable in PIC mode.
+
+       * src/base/ftglyph.c (FT_Glyph_To_Bitmap): `glyph' must be
+       set before derefering to obtain `library'.  The initialization
+       of `clazz', `glyph', `library' and NULL pointer check are
+       reordered to minimize PIC conditonals.
+
+2012-01-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [base] Insert explicit cast for GCC 4.6 in PIC mode.
+
+       * src/base/ftinit.c (FT_Add_Default_Modules): Under PIC
+       configuration, FT_DEFAULT_MODULES_GET returns
+       FT_Module_Class** pointer, GCC 4.6 warns that
+       const FT_Module_Class* const* variable is warned as
+       inappropriate to store it.  To calm it, explicit cast is
+       inserted.  Also `library' is checked to prevent the NULL
+       pointer dereference in FT_DEFAULT_MODULES_GET.
+
+2012-01-13  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Fix PIC build broken by d9145241fe378104ba4c12a42534549faacc92e6.
+
+       Under PIC configuration, FT_{CFF,PSCMAPS,SFNT,TT}_SERVICES_GET
+       take no arguments but derefer the variable named `library'
+       internally.
+
+       * src/cff/cffdrivr.c (cff_get_interface): Declare `library' and
+       set it if non-NULL driver is passed.
+       * src/truetype/ttdriver.c (tt_get_interface): Ditto.
+
+       * src/sfnt/sfdriver.c (sfnt_get_interface): Declare `library'
+       under PIC configuration, and set it if non-NULL module is given.
+       * src/psnames/psmodule.c (psnames_get_interface): Ditto.
+
+2012-01-13  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Make PIC files include module error headers, to use the error codes
+       with per-module prefix.
+
+       * src/autofit/afpic.c: Include `aferrors.h'.
+       * src/cff/cffpic.c: Include `cfferrs.h'.
+       * src/pshinter/pshpic.c: Include `pshnterr.h'.
+       * src/raster/rastpic.c: Include `rasterrs.h'.
+       * src/sfnt/sfntpic.c: Include `sferrors.h'.
+       * src/smooth/ftspic.c: Include `ftsmerrs.h'.
+       * src/truetype/ttpic.c: Include `tterrors.h'.
+
+2012-01-04  Tobias Ringström  <tobias@ringis.se>
+
+       [truetype] Fix IP instruction if x_ppem != y_ppem.
+
+       * src/truetype/ttinterp.c (Ins_IP): Scale `orus' coordinates
+       properly.
+
+2012-01-02  Werner Lemberg  <wl@gnu.org>
+
+       Fix tracing message for `loca' table.
+
+       * src/truetype/ttpload.c (tt_face_get_location): Don't emit a
+       warning message if the last `loca' entry references an empty glyph.
+
+2011-12-10  Werner Lemberg  <wl@gnu.org>
+
+       Add some variable initializations.
+       Reported by Richard COOK <rscook@unicode.org>.
+
+       * src/type1/t1driver.c (t1_ps_get_font_value): Initialize `val'.
+       * src/smooth/ftgrays.c (gray_render_conic): Initialize `levels'
+       earlier.
+
+2011-12-08  Werner Lemberg  <wl@gnu.org>
+
+       Fix serious scaling bug in `FT_Get_Advances'.
+
+       * src/base/ftadvanc.c (FT_Get_Advances): Advance values returned by
+       `FT_Load_Glyph' must be simply multiplied by 1024.
+
+2011-12-08  Werner Lemberg  <wl@gnu.org>
+
+       * src/bdf/bdflib.c (_bdf_parse_start): Drop redundant error tracing.
+
+2011-12-02  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [mac] Unify DARWIN_NO_CARBON with FT_MACINTOSH.
+
+       Originally FT_MACINTOSH was a pure auto macro and DARWIN_NO_CARBON
+       was a configurable macro to disable Carbon-dependent code.  Because
+       now configure script sets DARWIN_NO_CARBON by default and disables
+       Darwin & Carbon-dependent codes, these macros can be unified.
+       FT_MACINTOSH (undefined by default) is kept and DARWIN_NO_CARBON
+       (defined by default) is removed, because DARWIN_NO_CARBON violates
+       FT_XXX naming convention of public macros, and a macro configured by
+       default is not portable for the building without configure (e.g.
+       make devel).
+
+       * builds/unix/configure.raw: Define FT_MACINTOSH if Carbon-based
+       old Mac font support is requested and Carbon is available.
+       * builds/unix/ftconfig.in: Undefine FT_MACINTOSH when the support
+       for Mac OS X without Carbon (e.g.  Mac OS X 10.4 for ppc64) is
+       requested.
+       * include/freetype/config/ftconfig.in: Ditto.
+       * builds/vms/ftconfig.h: Ditto.
+
+       * src/base/ftbase.h: Remove DARWIN_NO_CARBON.
+       * src/base/ftbase.c: Ditto.
+       * src/base/ftobjs.c: Ditto.
+       * src/base/ftrfork.c: Ditto.
+
+       * src/base/ftmac.c: Compile the body if FT_MACINTOSH is defined
+       (same with TT_USE_BYTECODE_INTERPRETER in ttinterp.c).
+       * builds/mac/ftmac.c: Ditto.
+
+       * builds/mac/FreeType.m68k_cfm.make.txt: Define FT_MACINTOSH.
+       * builds/mac/FreeType.m68k_far.make.txt: Ditto.
+       * builds/mac/FreeType.ppc_classic.make.txt: Ditto.
+       * builds/mac/FreeType.ppc_carbon.make.txt: Ditto.
+
+2011-11-30  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Fix Savannah bug #34728 (`make devel' on Mac OS X).
+
+       * builds/toplevel.mk: Check `/dev/null' to identify the Unix-
+       like systems without `init' nor `hurd' (e.g. Mac OS X >= 10.4).
+       * builds/unix/detect.mk: Ditto.
+
+2011-11-30  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [apinames] Fix the overflow of signed integer hash.
+
+       * src/tools/apinames.c (names_add): Change the type of `h' from
+       int to unsigned int, to prevent undefined behaviour in the
+       overflow of signed integers (overflow of unsigned int is defined
+       to be wrap around).  Found by clang test suggested by Sean
+       McBride.
+
+2011-11-30  Werner Lemberg  <wl@gnu.org>
+
+       [winfonts] Remove casts.
+
+       * src/winfonts/winfnt.c (winfnt_driver_class): Remove all casts and
+       update affected functions.
+       (FNT_Size_Select): Fix number of arguments.
+
+2011-11-30  Werner Lemberg  <wl@gnu.org>
+
+       [type42] Remove casts.
+
+       * src/type42/t42driver.c (t42_driver_class): Remove all casts and
+       update affected functions.
+
+       * src/type42/t42objs.c, src/type42/t42objs.h: Updated for t42driver
+       changes.
+
+2011-11-30  Werner Lemberg  <wl@gnu.org>
+
+       [type1] Remove casts.
+
+       * src/type1/t1driver.c (t1_driver_class): Remove all casts and
+       update affected functions.
+
+       * src/type1/t1gload.c, src/type1/t1gload.h, src/type1/t1objs.c:
+       Updated for t1driver changes.
+       src/type1/t1objs.h (T1_Driver): Remove unused typedef.
+       Updated for t1driver changes.
+
+2011-11-27  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #34896.
+
+       ENCODING now covers the whole Unicode range.
+
+       Note, however, that this change is quite expensive since it
+       increases the size of three arrays by almost 400kByte in total.  The
+       right fix is to replace the logic with something smarter.
+       Additionally, there exist very old BDFs for three-byte CCCII
+       encoding which exceeds the range of Unicode (another reason to have
+       a smarter logic).
+
+       * src/bdf/bdf.h (bdf_font_t): Increase size of `nmod' and `umod'
+       arrays.
+       * src/bdf/bdflib.c (bdf_parse_t): Increase size of `have' array.
+
+2011-11-27  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Improve tracing.
+
+       * src/bdf/bdflib.c (DBGMSG1, DBGMSG2): New macros.
+       (_bdf_parse_glyphs): Use them.
+
+2011-11-26  Werner Lemberg  <wl@gnu.org>
+
+       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  Werner Lemberg  <wl@gnu.org>
+
+       [cid] Fix error code.
+
+       * src/cid/cidparse.c (cid_parser_new): Do it.
+
+2011-11-26  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Fix error code.
+
+       * src/cff/cffload.c (cff_font_load): Do it.
+
+2011-11-26  Werner Lemberg  <wl@gnu.org>
+
+       Add new error code FT_Err_Missing_Module.
+
+       Previously, FreeType misleadingly returned
+       FT_Err_Unknown_File_Format if a module was missing (or a test was
+       missing completely).
+
+       * include/freetype/fterrdef.h (FT_Err_Missing_Module): Define.
+
+       * src/cff/cffobjs.c (cff_face_init), src/cff/cffdrivr.c
+       (cff_get_glyph_name), src/cid/cidobjs.c (cid_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, T42_Driver_Init): Updated.
+
+       * src/type1/t1afm.c (T1_Read_Metrics), src/type/t1objs.c
+       (T1_Face_Init), src/type42/t42objs.c (T42_Face_Init): Remove now
+       redundant test for `psaux'.
+
+2011-11-25  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Add more error messages.
+
+       * src/bdf/bdflib.c (_bdf_set_default_spacing, _bdf_add_property):
+       Add line number argument.
+       Update all callers.
+       (ERRMSG5, ERRMSG6, ERRMSG7, ERRMSG8, ERRMSG9): New macros.
+       (_bdf_readstream, _bdf_set_default_spacing, _bdf_add_property,
+       _bdf_parse_glyphs, _bdf_parse_start): Add error messages.
+
+2011-11-24  Werner Lemberg  <wl@gnu.org>
+
+       * include/freetype/fterrors.h: Remove dead code.
+
+2011-11-15  Werner Lemberg  <wl@gnu.org>
+
+       * docs/releases: Updated.
+
+2011-11-15  Werner Lemberg  <wl@gnu.org>
+
+       * Version 2.4.8 released.
+       =========================
+
+
+       Tag sources with `VER-2-4-8'.
+
+       * docs/CHANGES: Updated.
+
+       * docs/VERSION.DLL: Update documentation and bump version number to
+       2.4.8.
+
+       * README, Jamfile (RefDoc),
+       builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
+       builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
+       builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
+       builds/win32/visualc/freetype.dsp,
+       builds/win32/visualc/freetype.vcproj,
+       builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
+       builds/win32/visualce/freetype.vcproj,
+       builds/win32/visualce/index.html,
+       builds/wince/vc2005-ce/freetype.vcproj,
+       builds/wince/vc2005-ce/index.html,
+       builds/wince/vc2008-ce/freetype.vcproj,
+       builds/wince/vc2008-ce/index.html: s/2.4.7/2.4.8/, s/247/248/.
+
+       * include/freetype/freetype.h (FREETYPE_PATCH): Set to 8.
+
+       * builds/unix/configure.raw (version_info): Set to 14:0:8.
+
+2011-11-13  Chris Liddell  <chris.liddell@artifex.com>
+
+       Add FT_Get_PS_Font_Value() API.
+
+       This allows a Type 1 font face to be interrogated to retrieve most
+       of the dictionary keys (keys not relevant to FreeType's Type 1
+       interpreter are not available).
+
+       * include/freetype/internal/services/svpsinfo.h
+       (PS_GetFontValueFunc): New typedef.
+       (PSInfo): Add `ps_get_font_value'.
+       (FT_DEFINE_SERVICE_PSINFOREC): Updated.
+
+       * include/freetype/internal/t1types.h (T1_EncodingType): Moved to...
+       * include/freetype/t1tables.h: Here.
+       (PS_Dict_Keys): New enumeration.
+       (FT_Get_PS_Font_Value): New declaration.
+
+       * src/base/fttype1.c (FT_Get_PS_Font_Value): New function.
+
+       * src/type1/t1driver.c (t1_ps_get_font_value): This new function
+       does the real job.
+       (t1_service_ps_info): Add it.
+
+       * src/cff/cffdrivr.c (cff_service_ps_info), src/cid/cidriver.c
+       (cid_service_ps_info), src/type42/t42drivr.c (t42_service_ps_info):
+       Updated.
+
+2011-11-08  Braden Thomas  <bthomas@apple.com>
+
+       [cid] Various loading fixes.
+
+       * src/cid/cidload.c (cid_load_keyword) <default>,
+       (parse_font_matrix, parse_expansion_factor): Correctly check number
+       of dictionaries.
+       (cid_read_subrs): Protect against invalid values of `num_subrs'.
+       Assure that the elements of the `offsets' array are ascending.
+
+2011-11-05  Werner Lemberg  <wl@gnu.org>
+
+       * README: We use copyright ranges also.
+
+       According to
+
+         http://www.gnu.org/prep/maintain/html_node/Copyright-Notices.html
+
+       this should be mentioned explicitly.
+
+2011-10-30  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [raccess] Supplement for previous fix.
+
+       * src/base/ftbase.h (raccess_rule_by_darwin_vfs): Do not declare
+       it on native Mac OS X.
+       * src/base/ftrfork.c (raccess_get_rule_type_from_rule_index):
+       Hide raccess_get_rule_type_from_rule_index() on native Mac OS X
+       too.
+
+2011-10-30  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [raccess] Hide raccess_rule_by_darwin_vfs() on native Mac OS X.
+
+       * src/base/ftrfork.c (raccess_rule_by_darwin_vfs): Do not
+       compile on native Mac OS X because it is not used.
+
+2011-10-25  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix MD instruction for twilight zone.
+
+       * src/truetype/ttinterp.c (Ins_MD): Without this fix, the MD
+       instruction applied to original coordinates of twilight points
+       always returns zero.
+
+2011-10-18  Werner Lemberg  <wl@gnu.org>
+
+       * Version 2.4.7 released.
+       =========================
+
+
+       Tag sources with `VER-2-4-7'.
+
+       * docs/CHANGES: Updated.
+
+       * docs/VERSION.DLL: Update documentation and bump version number to
+       2.4.7.
+
+       * README, Jamfile (RefDoc),
+       builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
+       builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
+       builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
+       builds/win32/visualc/freetype.dsp,
+       builds/win32/visualc/freetype.vcproj,
+       builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
+       builds/win32/visualce/freetype.vcproj,
+       builds/win32/visualce/index.html,
+       builds/wince/vc2005-ce/freetype.vcproj,
+       builds/wince/vc2005-ce/index.html,
+       builds/wince/vc2008-ce/freetype.vcproj,
+       builds/wince/vc2008-ce/index.html: s/2.4.6/2.4.7/, s/246/247/.
+
+       * include/freetype/freetype.h (FREETYPE_PATCH): Set to 7.
+
+       * builds/unix/configure.raw (version_info): Set to 13:2:7.
+
+2011-10-15  Kal Conley  <kcconley@gmail.com>
+
+       Fix handling of transformations if no renderer is present.
+
+       * src/base/ftobjs.c (FT_Load_Glyph): Thinko.
+
+2011-10-15  Kal Conley  <kcconley@gmail.com>
+
+       Fix conditions for autohinting.
+
+       * src/base/ftobjs.c (FT_Load_Glyph): Handle
+       FT_LOAD_IGNORE_TRANSFORM.
+
+2011-10-07  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [gxvalid] Fix a bug to detect too large offset in morx table.
+
+       * src/gxvalid/gxvmorx2.c
+       (gxv_morx_subtable_type2_ligActionIndex_validate): Fix a bug
+       that too large positive offset cannot be detected.
+
+2011-10-01  Braden Thomas  <bthomas@apple.com>
+
+       Handle some border cases.
+
+       * include/freetype/config/ftstdlib.h (FT_USHORT_MAX): New macro.
+
+       * src/base/ftbitmap.c (FT_Bitmap_Convert): Protect against invalid
+       value of `target->rows'.
+
+       * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Add check for
+       flex start.
+
+       * src/raster/ftrend1.c (ft_raster1_render): Check `width' and
+       `height'.
+
+       * src/truetype/ttgxvar.c (TT_Vary_Get_Glyph_Deltas): Protect against
+       invalid values in `localpoints' array.
+
+2011-10-01  Werner Lemberg  <wl@gnu.org>
+
+       [psnames] Handle zapfdingbats.
+       Problem reported by Nicolas Rougier <Nicolas.Rougier@inria.fr>.
+
+       * src/tools/glnames.py (adobe_glyph_list): Add data from AGL's
+       `zapfdingbats.txt' file.
+
+       * src/psnames/pstables.h: Regenerated.
+
+2011-09-27  Simon Bünzli  <zeniko@gmail.com>
+
+       [type1] Fix Savannah bug #34189.
+
+       * src/type1/t1load.c (T1_Open_Face): Initialize
+       `face->len_buildchar'.
+
+2011-09-26  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Dump SIDs while tracing.
+
+       * src/cff/cffobjs.c (cff_face_init): Do it.
+
+       * src/cff/cffparse.c (cff_parser_run) [FT_DEBUG_LEVEL_TRACE]
+       <cff_kind_string>: Identify as SID.
+
+2011-09-17  Werner Lemberg  <wl@gnu.org>
+
+       Remove unused FT_ALIGNMENT macro.
+
+       * builds/unix/ftconfig.in, builds/vms/ftconfig.h,
+       include/freetype/config/ftconfig.h: Do it.
+
+2011-09-17  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       [smooth] Slightly optimize conic and cubic flatterners.
+
+       * src/smooth/ftgrays.c (gray_render_conic, gray_render_cubic): Move
+       out some code from the main loop to speed it up.
+
+2011-09-11  Tomas Hoger  <thoger@redhat.com>
+
+       Slightly improve LZW_CLEAR handling.
+
+       * src/lzw/ftzopen.c (ft_lzwstate_io) <FT_LZW_PHASE_CODE>:
+       Ensure that subsequent (modulo garbage byte(s)) LZW_CLEAR codes are
+       handled as clear codes.  This also re-sets old_code and old_char to
+       predictable values, which is a little better than using `random'
+       ones if the code following LZW_CLEAR is invalid.
+
+2011-09-11  Tomas Hoger  <thoger@redhat.com>
+
+       Add explicit LZW decompression stack size limit.
+
+       Stack larger than 1<<LZW_MAX_BITS is never needed if prefix table is
+       constructed correctly.  It's even less than that, see e.g.
+       libarchive code comment for a better size upper bound:
+
+         http://code.google.com/p/libarchive/source/browse/trunk/libarchive/archive_read_support_filter_compress.c?r=3635#121
+
+       This patch adds explicit stack size limit, enforced when stack is
+       realloced.
+
+       An alternative is to ensure that code < state->prefix[code - 256]
+       when traversing prefix table.  Such check is less efficient and
+       should not be required if prefix table is constructed correctly in
+       the first place.
+
+       * src/lzw/ftzopen.c (ft_lzwstate_stack_grow): Implement it.
+
+2011-09-11  Tomas Hoger  <thoger@redhat.com>
+
+       Protect against loops in the prefix table.
+
+       LZW decompressor did not sufficiently check codes read from the
+       input LZW stream.  A specially-crafted or corrupted input could
+       create a loop in the prefix table, which leads to memory usage
+       spikes, as there's no decompression stack size limit.
+
+       * src/lzw/ftzopen.c (ft_lzwstate_io) <FT_LZW_PHASE_START>: First
+       code in valid LZW stream must be 0..255.
+       <FT_LZW_PHASE_CODE>: In the special KwKwK case, code == free_ent,
+       code > free_ent is invalid.
+
+2011-09-09  Werner Lemberg  <wl@gnu.org>
+
+       Better tracing of metrics.
+
+       * src/base/ftobjs.c (FT_Request_Size, FT_Select_Size): Decorate with
+       FT_TRACE.
+
+2011-09-07  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Fix Savannah bug #33816.
+
+       * src/cff/cfftypes.h (CFF_FontRecDictRec): New member
+       `has_font_matrix'.
+       * src/cff/cffparse.c (cff_parse_font_matrix): Set it.
+       Update tracing output.
+       * src/cff/cffobjs.c (cff_face_init): Use it so that the heuristics
+       can be removed.
+
+2011-08-30  Werner Lemberg  <wl@gnu.org>
+
+       Better tracing of metrics.
+
+       * src/base/ftobjs.c (FT_Select_Metrics, FT_Request_Metrics):
+       Decorate with FT_TRACE.
+
+2011-08-25  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Better tracing of the parsing process.
+
+       * src/cff/cffload.c (cff_subfont_load, cff_font_load): Decorate with
+       FT_TRACE.
+
+       * src/cff/cffparse.c (cff_parse_font_matrix, cff_parse_font_bbox,
+       cff_parse_private_dict, cff_parse_cid_ros): Updated.
+       (CFF_FIELD_NUM, CFF_FIELD_FIXED, CFF_FIELD_FIXED_1000,
+       CFF_FIELD_STRING, CFF_FIELD_BOOL, CFF_FIELD_CALLBACK, CFF_FIELD,
+       CFF_FIELD_DELTA): Add argument for ID.
+       (cff_parser_run): Decorate with FT_TRACE.
+
+       * src/cff/cffparse.h (CFF_Field_Handler) [FT_DEBUG_LEVEL_TRACE]: Add
+       `id' member.
+
+       * src/cff/cfftoken.h: Add IDs to all fields.
+
+2011-08-16  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #34022.
+
+       * README, docs/INSTALL: Remove references to UPGRADE.UNIX.
+
+2011-08-15  Werner Lemberg  <wl@gnu.org>
+
+       Fix Savannah bug #34018.
+
+       * docs/UPGRADE.UNIX: Removed.  Obsolete.
+
+2011-08-15  David Bevan  <david.bevan@pb.com>
+
+       Fix Savannah bug #33992.
+
+       * src/base/ftstroke.c (FT_Stroker_ParseOutline): Fix border case.
+
+2011-08-12  Werner Lemberg  <wl@gnu.org
+
+       [truetype] Fix degenerate case in S{P,F,DP}VTL opcodes.
+
+       * src/truetype/ttinterp.c (Ins_SxVTL): Handle p1 == p2 specially.
+       (Ins_SDPVTL): Handle v1 == v2 specially.
+
+2011-08-09  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Fix Savannah bug #33975.
+
+       * src/cff/cffparse.c (cff_parse_font_matrix): Fix typo.
+
+2011-07-29  Werner Lemberg  <wl@gnu.org>
+
+       * Version 2.4.6 released.
+       =========================
+
+
+       Tag sources with `VER-2-4-6'.
+
+       * docs/CHANGES: Updated.
+
+       * docs/VERSION.DLL: Update documentation and bump version number to
+       2.4.6.
+
+       * README, Jamfile (RefDoc),
+       builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
+       builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
+       builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
+       builds/win32/visualc/freetype.dsp,
+       builds/win32/visualc/freetype.vcproj,
+       builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
+       builds/win32/visualce/freetype.vcproj,
+       builds/win32/visualce/index.html,
+       builds/wince/vc2005-ce/freetype.vcproj,
+       builds/wince/vc2005-ce/index.html,
+       builds/wince/vc2008-ce/freetype.vcproj,
+       builds/wince/vc2008-ce/index.html: s/2.4.5/2.4.6/, s/245/246/.
+
+       * include/freetype/freetype.h (FREETYPE_PATCH): Set to 6.
+
+       * builds/unix/configure.raw (version_info): Set to 13:1:7.
+
+2011-07-29  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Add some more tracing infos.
+
+       * src/cff/cffparse.c (cff_parse_font_matrix, cff_parse_font_bbox,
+       cff_parse_cid_ros): Add tracing.
+
+2011-07-22  Dirk Müller  <dmueller@suse.de>
+
+       [psaux, type1] Fix null pointer dereferences.
+
+       Found with font fuzzying.
+
+       * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Check
+       `decoder->buildchar'.
+
+       * src/type1/t1load.c (t1_load_keyword): Check `blend->num_designs'.
+
+2011-07-20  Chris Morgan  <cmorgan@cybexintl.com>
+
+       Add FT_CONFIG_OPTION_DISABLE_STREAM_SUPPORT.
+
+       Useful for embedded systems which don't need file stream support.
+
+       * src/base/ftsystem.c, src/base/ftobjs.c (FT_Stream_New): Implement
+       it.
+
+2011-07-20  Elton Chung  <elton328@gmail.com>
+
+       * src/base/ftpatent.c (FT_Face_SetUnpatentedHinting): Fix typo.
+
+2011-07-16  Steven Chu  <steven.f.chu@gmail.com>
+
+       [truetype] Fix metrics on size request for scalable fonts.
+
+       * src/truetype/ttdriver.c (tt_size_request): Fix copying metrics
+       from TT_Size to FT_Size if scalable font.
+
+       See
+
+         http://lists.gnu.org/archive/html/freetype-devel/2011-07/msg00049.html
+
+       for some comparison images.
+
+2011-07-14  Matthias Drochner  <M.Drochner@fz-juelich.de>.
+
+       [psaux] Fix potential sign extension problems.
+
+       When shifting right a signed value, it is not defined by the
+       C standard whether one gets a sign extension or not.  Use a macro to
+       do an explicit cast from a signed short (assuming that this is
+       16bit) to an int.
+
+       * src/psaux/t1decode.c (Fix2Int): New macro.
+       Use it where appropriate.
+
+2011-07-14  Werner Lemberg  <wl@gnu.org>
+
+       * src/psaux/t1decode.c (t1_decoder_parse_charstrings)
+       <op_callothersubr>: Better handling of subroutine index 0.
+       From Matthias Drochner <M.Drochner@fz-juelich.de>.
+
+2011-07-10  Алексей Подтележников  <apodtele@gmail.com>
+
+       [psaux] Optimize previous commit.
+
+       * src/psaux/t1decode.c (t1_decoder_parse_charstrings)
+       <op_callothersubr>: Move error check down to avoid testing twice for
+       good cases.
+
+2011-07-08  Werner Lemberg  <wl@gnu.org>
+
+       [psaux] Add better argument check for `callothersubr'.
+
+       * src/psaux/t1decode.c (t1_decoder_parse_charstrings)
+       <op_callothersubr>: Reject negative arguments.
+
+2011-07-07  Werner Lemberg  <wl@gnu.org>
+
+       [sfnt] Try harder to find non-zero values for ascender and descender.
+
+       * src/sfnt/sfobjs.c (sfnt_load_face): Consult `OS/2' table in case
+       the `hhea' table's values are zero.
+
+2011-07-03  Werner Lemberg  <wl@gnu.org>
+
+       Fix previous commit.
+
+       We want to unset FT_FACE_FLAG_SCALABLE only if there are bitmap
+       strikes in the font.
+
+       * src/truetype/ttobjs.c (tt_face_init): Implement it.
+
+       * docs/CHANGES: Updated.
+
+2011-07-02  Just Fill Bugs  <mozbugbox@yahoo.com.au>
+
+       [truetype] Fix Savannah bug #33246.
+
+       * src/truetype/ttobjs.c (tt_check_single_notdef): New function.
+       (tt_face_init): Use it to test FT_FACE_FLAG_SCALABLE.
+
+2011-07-02  Werner Lemberg  <wl@gnu.org>
+
+       * docs/CHANGES: Updated.
+
+2011-07-02  David Bevan  <david.bevan@pb.com>
+
+       [ftstroke] Major revision.
+
+       The main problems
+       -----------------
+
+         o If FT_STROKER_LINEJOIN_BEVEL was specified, unlimited miter
+           joins (not bevel joins) were generated.  Indeed, the meanings of
+           `miter' and `bevel' were incorrectly reversed (consistently) in
+           both the code and comments.
+
+         o The way bevel joins were constructed (whether specified
+           explicitly, or created as a result of exceeding the miter limit)
+           did not match what is required for stroked text in PostScript or
+           PDF.
+
+       The main fixes
+       --------------
+
+         o The behaviour of FT_STROKER_LINEJOIN_BEVEL has been corrected.
+
+         o A new line join style, FT_STROKER_LINEJOIN_MITER_FIXED, has been
+           introduced to support PostScript and PDF miter joins.
+
+         o FT_STROKER_LINEJOIN_MITER_VARIABLE has been introduced as an
+           alias for FT_STROKER_LINEJOIN_MITER.
+
+       Additionally, a variety of stroking errors have been fixed.  These
+       would cause various artifacts (including points `at infinity'),
+       especially when stroking poor quality fonts.
+
+       See
+
+         http://lists.gnu.org/archive/html/freetype-devel/2011-07/msg00001.html
+
+       for example documents.  The FreeType stroker now produces results
+       very similar to that produced by GhostScript and Distiller for these
+       fonts.
+
+       Other problems
+       --------------
+
+       The following problems have been resolved:
+
+         o Inside corners could be generated incorrectly.  Intersecting the
+           inside corner could cause a missing triangular area and other
+           effects.
+
+           The intersection point can only be used if the join is between
+           two lines and both lines are long enough.  The `optimization'
+           condition in `ft_stroker_inside' has been corrected; this
+           requires the line length to be passed into various functions and
+           stored in `FT_StrokerRec'.
+
+         o Incorrect cubic curves could be generated.  The angle
+           calculations in `FT_Stroker_CubicTo' have been corrected to
+           handle the case of the curve crossing the +/-PI direction.
+
+         o If the border radius was greater than the radius of curvature of
+           a curve, then the negative sector would end up outside (not
+           inside) the border.  This situation is now recognized and the
+           negative sector is circumnavigated in the opposite direction.
+           (If round line joins are being used, this code is disabled
+           because the line join will always cover the negative sector.)
+
+         o When a curve is split, the arcs may not join smoothly (especially
+           if the curve turns sharply back on itself).  Changes in
+           direction between adjacent arcs were not handled.  A round
+           corner is now added if the deviation from one arc to the next is
+           greater than a suitable threshold.
+
+         o The current direction wasn't retained if a the outline contained
+           a zero length lineto or a curve that was determined to be
+           `basically a point'.  This could cause a spurious join to be
+           added.
+
+         o Cubics with close control points could be mishandled.  All eight
+           cases are now distinguished correctly.
+
+       Other improvements
+       ------------------
+
+       o Borders for cubic curves could be too `flat'.
+         FT_SMALL_CUBIC_THRESHOLD has been reduced a little to prevent
+         this.
+
+       o The handling and use of movable points has been simplified a
+         little.
+
+       o Various values are now computed only if the results are actually
+         needed.
+
+       o The directions of the outer and inner borders have been swapped,
+         as recommended by Graham Asher.
+
+       * src/base/ftstroke.c: Revised.
+       * include/freetype/ftstroke.h: Updated.
+
+2011-06-30  İsmail Dönmez <ismail@namtrac.org>
+
+       * builds/toplevel.mk: We use git, not CVS, thus skip `.gitignore'.
+
+2011-06-29  Werner Lemberg  <wl@gnu.org>
+
+       [bdf] Fix Savannah bug #33663.
+
+       * src/bdf/bdflib.c (_bdf_parse_glyphs): Handle negative values for
+       ENCODING correctly.
+
+       * docs/CHANGES: Document it.
+
+2011-06-24  Werner Lemberg  <wl@gnu.org>
+
+       * Version 2.4.5 released.
+       =========================
+
+
+       Tag sources with `VER-2-4-5'.
+
+       * docs/CHANGES: Updated.
+
+       * docs/VERSION.DLL: Update documentation and bump version number to
+       2.4.5
+
+       * README, Jamfile (RefDoc),
+       builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
+       builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
+       builds/win32/vc2010/freetype.vcxproj, builds/win32/vc2010/index.html,
+       builds/win32/visualc/freetype.dsp,
+       builds/win32/visualc/freetype.vcproj,
+       builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
+       builds/win32/visualce/freetype.vcproj,
+       builds/win32/visualce/index.html,
+       builds/wince/vc2005-ce/freetype.vcproj,
+       builds/wince/vc2005-ce/index.html,
+       builds/wince/vc2008-ce/freetype.vcproj,
+       builds/wince/vc2008-ce/index.html: s/2.4.4/2.4.5/, s/244/245/.
+
+       * include/freetype/freetype.h (FREETYPE_PATCH): Set to 5.
+
+       * builds/unix/configure.raw (version_info): Set to 13:0:7.
+
+2011-06-20  Werner Lemberg  <wl@gnu.org>
+
+       * src/autofit/aflatin.c (af_latin_metrics_scale_dim): Fix change
+       from 2011-05-04.
+
+2011-06-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [gxvalid] make the `prop' validation tracing verbose.
+
+       * src/gxvalid/gxvprop.c: Add tracing messages for errors.
+
+2011-06-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [autogen.sh] Reflect environment variable LIBTOOLIZE.
+
+2011-06-18  Werner Lemberg <wl@gnu.org>
+
+       Update license documentation.
+
+       * docs/GPL.TXT: Renamed to...
+       * docs/GPLv2.TXT: This.
+
+       * docs/LICENSE.TXT: Updated.
+
+2011-06-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       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-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [base] Fix g++4.6 compiler warnings in src/base/*.c.
+
+       Passing uninitialized pointer to FT_NEW() families is
+       not problematic theoretically (as far as the returned
+       pointer is checked before writing), but g++4.6 dislikes
+       it and warns by -Wuninitialized.  Initialize them by NULL.
+
+       * src/base/ftobjs.c (FT_Stream_New): Init `stream'.
+       (new_memory_stream): Ditto.
+       (FT_New_GlyphSlot): Init `slot'.
+       (FT_CMap_New): Init `cmap'.
+       (open_face_PS_from_sfnt_stream): Init `sfnt_ps'.
+       (Mac_Read_POST_Resource): Init `pfb_data'.
+       (Mac_Read_sfnt_Resource): Init `sfnt_data'.
+       * src/base/ftrfork.c (FT_Raccess_Get_DataOffsets):
+       Init `offsets_internal' and `ref'.
+       (raccess_guess_darwin_hfsplus): Init `newpath'.
+       (raccess_guess_darwin_newvfs): Ditto.
+       * src/base/ftbitmap.c (ft_bitmap_assure_buffer):
+       Init `buffer'.
+       * src/base/ftstroke.c (FT_Stroker_New): Init `stroker'.
+
+2011-06-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [gxvalid] Cleanup.
+
+       Some invalid, overrunning, unrecommended non-zero values
+       are cared in paranoid validation mode only.  There are
+       many lines looking like:
+
+         if ( valid->root->level >= FT_VALIDATE_PARANOID )
+           FT_INVALID_xxx;
+
+       To simplify them, GXV_SET_ERR_IF_PARANOID( err ) is
+       introduced for more paranoid validation in future.
+
+       * src/gxvalid/gxvcommn.h (IS_PARANOID_VALIDATION):
+       New macro to assure valid->root->level is more or
+       equal to FT_VALIDATE_PARANOID.  (GXV_SET_ERR_IF_PARANOID):
+       New macro to raise an error if in paranoid validation.
+       * src/gxvalid/gxvcommn.c: Use GXV_SET_ERR_IF_PARANOID().
+       * src/gxvalid/gxvfeat.c: Ditto.
+       * src/gxvalid/gxvjust.c: Ditto.
+       * src/gxvalid/gxvkern.c: Ditto.
+       * src/gxvalid/gxvmort.c: Ditto.
+       * src/gxvalid/gxvmort0.c: Ditto.
+       * src/gxvalid/gxvmort1.c: Ditto.
+       * src/gxvalid/gxvmort2.c: Ditto.
+       * src/gxvalid/gxvmorx1.c: Ditto.
+       * src/gxvalid/gxvmorx2.c: Ditto.
+
+2011-06-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [gxvalid] Fix gcc4.6 compiler warnings in gxvtrak.c.
+
+       * src/gxvalid/gxvtrak.c (gxv_trak_trackTable_validate):
+       Check different entries pointing same traking value.
+       (gxv_trak_validate): Remove unused variable `table_size'.
+
+2011-06-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [gxvalid] Fix gcc4.6 compiler warnings in gxvmorx*.c.
+
+       * src/gxvalid/gxvmorx.c (gxv_morx_subtables_validate):
+       Conditionalize unvalidated variable `subFeatureFlags'.
+       (gxv_morx_chain_validate): Conditionalize unvalidated
+       variable `defaultFlags'.
+
+       * src/gxvalid/gxmorx0.c
+       (gxv_morx_subtable_type0_entry_validate):
+       Conditionalize unvalidated variables; `markFirst',
+       `dontAdvance', `markLast', `verb'.
+
+       * src/gxvalid/gxmorx1.c
+       (gxv_morx_subtable_type1_entry_validate): Conditionalize
+       unvalidated variables; `setMark', `dontAdvance'.
+
+       * src/gxvalid/gxvmorx2.c
+       (gxv_morx_subtable_type2_ligActionOffset_validate):
+       Conditionalize unvalidated variables; `last', `store'.
+       Checking for overrunning offset is added.
+       (gxv_morx_subtable_type2_entry_validate):
+       Conditionalize unvalidated variables; `setComponent',
+       `dontAdvance', `performAction'.
+       (gxv_morx_subtable_type2_ligatureTable_validate):
+       Check if the GID for ligature does not exceed the
+       max GID in `maxp' table.
+
+       * src/gxvalid/gxvmort5.c
+       (gxv_morx_subtable_type5_InsertList_validate):
+       Conditionalize unvalidated loading of `insert_glyphID'
+       array.  (gxv_morx_subtable_type5_entry_validate):
+       Conditionalize unvalidated variables; `setMark',
+       `dontAdvance', `currentIsKashidaLike',
+       `markedIsKashidaLike', `currentInsertBefore',
+       `markedInsertBefore'.
+
+2011-06-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [gxvalid] Fix gcc4.6 compiler warnings in gxvmort*.c.
+
+       * src/gxvalid/gxvmort.c (gxv_mort_subtables_validate):
+       Conditionalize unvalidated variable `subFeatureFlags'.
+       (gxv_mort_chain_validate): Conditionalize unvalidated
+       variable `defaultFlags'.
+
+       * src/gxvalid/gxmort0.c
+       (gxv_mort_subtable_type0_entry_validate): Check the
+       conflict of the marks for the glyphs.
+
+       * src/gxvalid/gxmort1.c
+       (gxv_mort_subtable_type1_offset_to_subst_validate):
+       Local variables `min_gid', `max_gid' are replaced by
+       variables in the validator.
+       (gxv_mort_subtable_type1_entry_validate): Conditionalize
+       unvalidated variables; `setMark', `dontAdvance'.
+       (gxv_mort_subtable_type1_substTable_validate):
+       Validate the GID by the min/max GIDs in the validator.
+
+       * src/gxvalid/gxvmort2.c
+       (gxv_mort_subtable_type2_ligActionOffset_validate):
+       Conditionalize unvalidated variables; `last', `store'.
+       Checking for overrunning offset is added.
+       (gxv_mort_subtable_type2_entry_validate):
+       Conditionalize unvalidated variables; `setComponent',
+       `dontAdvance'.
+       (gxv_mort_subtable_type2_ligatureTable_validate):
+       Check if the GID for ligature does not exceed the
+       max GID in `maxp' table.
+
+       * src/gxvalid/gxvmort5.c
+       (gxv_mort_subtable_type5_InsertList_validate):
+       Conditionalize unvalidated loading of `insert_glyphID'
+       array.  (gxv_mort_subtable_type5_entry_validate):
+       Conditionalize unvalidated variables; `setMark',
+       `dontAdvance', `currentIsKashidaLike',
+       `markedIsKashidaLike', `currentInsertBefore',
+       `markedInsertBefore'.
+
+2011-06-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [gxvalid] Fix gcc4.6 compiler warnings in gxvkern.c.
+
+       * src/gxvalid/gxvkern.c
+       (gxv_kern_subtable_fmt0_pairs_validate): Conditionalize
+       unvalidated variable `kernValue'.
+       (gxv_kern_subtable_fmt1_entry_validate): Conditionalize
+       unvalidated variables; `push', `dontAdvance', `kernAction',
+       `kernValue'.
+       (gxv_kern_coverage_new_apple_validate): Conditionalize
+       trace-only variables; `kernVertical', `kernCrossStream',
+       `kernVariation'.
+       (gxv_kern_coverage_classic_apple_validate): Conditionalize
+       trace-only variables; `horizontal', `cross_stream'.
+       (gxv_kern_coverage_classic_microsoft_validate):
+       Conditionalize trace-only variables; `horizontal',
+       `minimum', `cross_stream', `override'.
+       (gxv_kern_subtable_validate): Conditionalize trace-only
+       variables; `version', `tupleIndex'.
+
+2011-06-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [gxvalid] Fix gcc4.6 compiler warnings in gxvjust.c.
+
+       * src/gxvalid/gxvjust.c (gxv_just_check_max_gid):
+       New function to unify the checks of too large GID.
+       (gxv_just_wdp_entry_validate): Conditionalize unvalidated
+       variables; `beforeGrowLimit', `beforeShrinkGrowLimit',
+       `afterGrowLimit', `afterShrinkGrowLimit', `growFlags',
+       `shrinkFlags'.  Additional check for non-zero values in
+       unused storage `justClass' is added.
+       (gxv_just_actSubrecord_type0_validate): Conditionalize
+       unvalidated variable `order'.  GID is checked by
+       gxv_just_check_max_gid().  Additional check for upside-down
+       relationship between `lowerLimit' and `upperLimit' is added.
+       (gxv_just_actSubrecord_type1_validate): GID is checked by
+       gxv_just_check_max_gid().
+       (gxv_just_actSubrecord_type2_validate): Conditionalize
+       unvalidated variable `substThreshhold'.  GID is checked by
+       gxv_just_check_max_gid().
+       (gxv_just_actSubrecord_type5_validate): GID is checked by
+       gxv_just_check_max_gid().
+       (gxv_just_classTable_entry_validate): Conditionalize
+       unvalidated variables; `setMark', `dontAdvance',
+       `markClass', `currentClass'.
+
+2011-06-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [gxvalid] Preparation to fix gcc4.6 compiler warnings.
+
+       * src/gxvalid/gxvcommn.h (GXV_LOAD_TRACE_VARS): New macro to
+       conditionalize the variable which is only used for trace messages.
+       Automatically set by FT_DEBUG_LEVEL_TRACE.
+       (GXV_LOAD_UNUSED_VARS): New macro to conditionalize the loading of
+       unvalidated variables.  Undefined by default to calm gcc4.6 warning.
+       (GXV_ValidatorRec.{min_gid,max_gid}): New variables to hold defined
+       GID ranges, for the comparison of GID ranges in different subtables.
+
+2011-06-08  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Remove unused structure member.
+
+       * src/autofit/afhints.h (AF_SegmentRec): Remove `contour'.
+       * src/autofit/aflatin.c (af_latin_hints_compute_segments),
+       src/autofit/aflatin2.c (af_latin2_hints_compute_segments): Updated.
+
+2011-05-30  Werner Lemberg  <wl@gnu.org>
+
+       Fix g++ 4.6 compilation.
+
+       * src/autofit/afhints.c (af_glyph_hints_dump_segments,
+       af_glyph_hints_dump_edges): Use cast.
+
+2011-05-30  Werner Lemberg  <wl@gnu.org>
+
+       Fix gcc 4.6 compiler warnings.
+
+       * src/autofit/afcjk.c (af_cjk_metrics_init_blues): Use casts and
+       remove unused variables.
+       * src/autofit/aflatin.c (af_latin_hints_compute_edges): Comment out
+       `up_dir'.
+       * src/smooth/ftsmooth.c (ft_smooth_render_generic): Use `height_org'
+       and `width_org' conditionalized.
+
+2011-05-28  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [mac] Conditionalize the inclusion of `AvailabilityMacros.h'.
+
+       The native SDK on earliest Mac OS X (10.0-10.1) did not have
+       `AvailabilityMacros.h'.  To prevent the inclusion of missing
+       header file, ECANCELED (introduced in 10.2) in POSIX header
+       file <errno.h> is checked to detect the system version.
+
+       * include/freetype/config/ftconfig.h: Conditionalize the
+       inclusion of `AvailabilityMacros.h'.
+       * builds/unix/ftconfig.in: Ditto.
+       * builds/vms/ftconfig.h: Ditto.
+
+2011-05-27  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Improve tracing of hinting process.
+
+       * src/autofit/aflatin.c (af_latin_hint_edges): Add tracing message
+       `ADJUST'.
+
+2011-05-26  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Fix trace message.
+
+       * src/autofit/aflatin.c (af_latin_hint_edges): Show correct value in
+       tracing message.
+
+2011-05-24  Daniel Zimmermann  <netzimme@googlemail.com>
+
+       Reduce warnings for MS Visual Studio 2010.
+
+       * src/autofit/afhints.c (af_glyph_hints_get_num_segments,
+       af_glyph_hints_get_segment_offset) [!FT_DEBUG_AUTOFIT]: Provide
+       return value.
+       * src/cff/cffgload.c (cff_slot_load): Add cast.
+       * src/truetype/ttobjs.c (tt_check_trickyness_sfnt_ids): Use proper
+       loop variable type.
+
+2011-05-16  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Automake component `builds/unix/install-sh' is removed.
+
+       * builds/unix/install-sh: Removed.  It is not needed to
+       include repository, because autogen.sh installs it.
+       * builds/unix/.gitignore: Register install-sh.
+
+2011-05-12  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [autofit] Make trace message for CJK bluezone more verbose.
+
+2011-05-08  Just Fill Bugs  <mozbugbox@yahoo.com.au>
+            suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [autofit] Add bluezones for CJK Ideographs.
+
+       To remove extremas of vertical strokes of CJK Ideographs at
+       low resolution and make the top and bottom horizontal stems
+       aligned, bluezones for CJK Ideographs are calculated from
+       sample glyphs.  At present, vertical bluezones (bluezones
+       to align vertical stems) are disabled by default.  For detail, see
+       http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00070.html
+       http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00092.html
+       http://lists.gnu.org/archive/html/freetype-devel/2011-05/msg00001.html
+
+       * include/freetype/internal/fttrace.h: New trace component `afcjk'.
+       * src/autofit/afcjk.h (AF_CJK{Blue,Axis,Metric}Rec): Add CJK version
+       for AF_Latin{Blue,Axis,Metric}Rec.
+       (af_cjk_metrics_check_digits): Ditto, shared with Indic module.
+       (af_cjk_metrics_init_widths): Ditto.
+       (af_cjk_metrics_init): Take AF_CJKMetric instead of AF_LatinMetric.
+       (af_cjk_metrics_scale): Ditto (declaration).
+       (af_cjk_hints_init): Ditto (declaration).
+       (af_cjk_hints_apply): Ditto (declaration).
+       * src/autofit/afcjk.c (af_cjk_metrics_scale): Ditto (body).
+       (af_cjk_hints_init): Ditto (body).
+       (af_cjk_hints_apply): Ditto (body).
+       (af_cjk_metrics_init_widths): Duplicate af_latin_metrics_init_widths.
+       (af_cjk_metrics_check_digits): Duplicate af_latin_metrics_check_digits.
+       (af_cjk_metrics_init): Call CJK bluezone initializer.
+       (af_cjk_metrics_scale_dim): Add code to scale bluezones.
+       (af_cjk_hints_compute_blue_edges): New function, CJK version of
+       af_latin_hints_compute_blue_edges.
+       (af_cjk_metrics_init_blues): New function, CJK version of
+       af_latin_metrics_init_blues.
+       (af_cjk_hints_edges): Add code to align the edge stems to blue zones.
+
+       * src/autofit/afindic.c (af_indic_metrics_init): Take AF_CJKMetric
+       instead of AF_LatinMetric, and initialize as af_cjk_metrics_init.
+       However bluezones are not initialized.
+       (af_indic_metrics_scale): Take AF_CJKMetric instead of AF_LatinMetric.
+       (af_indic_hints_init): Ditto.
+       (af_indic_hints_apply): Ditto.
+
+       * docs/CHANGES: Note about CJK bluezone support.
+
+2011-05-06  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Remove unused struct member.
+
+       * src/autofit/aflatin.h (AF_LatinAxis): Remove `control_overshoot'.
+
+2011-05-04  Werner Lemberg  <wl@gnu.org>
+
+       * src/autofit/aflatin.c (af_latin_metrics_scale_dim): Simplify.
+
+2011-05-01  Just Fill Bugs  <mozbugbox@yahoo.com.au>
+            Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Add more debugging functions.
+
+       * src/autofit/afhints.c (af_glyph_hints_get_num_segments,
+       af_glyph_hints_get_segment_offset): New functions.
+
+2011-05-01  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Add new option `--disable-mmap' to configure script.
+
+       * builds/unix/configure.raw: New option `--disable-mmap'
+       is added.  It is for the developers to simulate the systems
+       without mmap() (like 4.3BSD, minix etc) on POSIX systems.
+
+2011-04-30  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [truetype] Always recalculate the sfnt table checksum.
+
+       * src/truetype/ttobjs.c (tt_get_sfnt_checksum): Recalculate
+       the sfnt table checksum even if non-zero value is written in
+       the TrueType font header.  Some bad PDF generators write
+       wrong values.  For details see examples and benchmark tests
+       of the latency by recalculation:
+       http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00091.html
+       http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00096.html
+
+2011-04-30  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [truetype] Register a set of tricky fonts, NEC FA family.
+
+       * src/truetype/ttobjs.c (tt_check_trickyness_sfnt_ids):
+       Add 8 checksum sets for NEC FA family.  For the tricky fonts
+       without some tables (e.g. NEC FA fonts lack cvt table),
+       extra check is added to assure that a zero-length table in the
+       registry is not included in the font.
+
+2011-04-29  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [truetype] Fix a bug in the sfnt table checksum getter.
+
+       * src/truetype/ttobjs.c (tt_get_sfnt_checksum): Check the
+       return value of face->goto_table() correctly.
+
+2011-04-28  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Improve tracing messages.
+
+       * src/autofit/aflatin.c (af_latin_metrics_init_blues,
+       af_latin_align_linked_edge, af_latin_hint_edges): Do it.
+
+2011-04-25  Kan-Ru Chen  <kanru@kanru.info>
+
+       [truetype] Always check the checksum to identify tricky fonts.
+
+       Because some PDF generators mangle the family name badly,
+       the trickyness check by the checksum should be invoked always.
+       For sample PDF, see
+       http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00073.html
+
+       * src/truetype/ttobjs.c (tt_check_trickyness): Even when
+       tt_check_trickyness_family() finds no trickyness,
+       tt_check_trickyness_sfnt_ids() is invoked.
+
+2011-04-22  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [autofit] Add more Indic scripts with hanging baseline.
+
+       * src/autofit/afindic.c (af_indic_uniranges): Tibetan, Limbu,
+       Sundanese, Meetei Mayak, Syloti Nagri and Sharada scripts are
+       added.
+
+2011-04-21  Behdad Esfahbod  <behdad@behdad.org>
+
+       Always ignore global advance.
+
+       This makes FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH redundant,
+       deprecated, and ignored.  The new behavior is what every major user
+       of FreeType has been requesting.  Global advance is broken in many
+       CJK fonts.  Just ignoring it by default makes most sense.
+
+       * src/truetype/ttdriver.c (tt_get_advances),
+       src/truetype/ttgload.c (TT_Get_HMetrics, TT_Get_VMetrics,
+       tt_get_metrics, compute_glyph_metrics, TT_Load_Glyph),
+       src/truetype/ttgload.h: Implement it.
+
+       * docs/CHANGES: Updated.
+
+2011-04-21  rainy6144  <rainy6144@gmail.com>
+
+       [autofit] Blur CJK stems if too many to preserve their gaps.
+
+       When there are too many stems to preserve their gaps in the
+       rasterization of CJK Ideographs at a low resolution, blur the
+       stems instead of showing clumped stems.  See
+       http://lists.gnu.org/archive/html/freetype-devel/2011-02/msg00011.html
+       http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00046.html
+       for details.
+
+       * src/autofit/afcjk.c (af_cjk_hint_edges): Store the position of
+       the previous stem by `has_last_stem' and `last_stem_pos', and skip
+       a stem if the current and previous stem are too near to preserve
+       the gap.
+
+2011-04-18  Werner Lemberg  <wl@gnu.org>
+
+       Integrate autofitter debugging stuff.
+
+       * devel/ftoption.h, include/freetype/config/ftoption.h
+       (FT_DEBUG_AUTOFIT): New macro.
+
+       * include/freetype/internal/fttrace.h: Add trace components for
+       autofitter.
+
+       * src/autofit/aftypes.h (AF_LOG): Removed.
+       (_af_debug): Removed.
+
+       * src/autofit/*: s/AF_DEBUG/FT_DEBUG_AUTOFIT/.
+       s/AF_LOG/FT_TRACE5/.
+       Define FT_COMPONENT where necessary.
+
+2011-04-18  Werner Lemberg  <wl@gnu.org>
+
+       Synchronize config files.
+
+       * builds/unix/ftconfig.in: Copy missing assembler routines from
+       include/freetype/config/ftconfig.h.
+
+2011-04-13  Werner Lemberg  <wl@gnu.org>
+
+       [psaux] Fix Savannah bug #33047.
+
+       Patch submitted by anonymous reporter.
+
+       * src/psaux/psobjs.c (ps_table_add): Use FT_PtrDist for pointer
+       difference.
+
+2011-04-11  Kan-Ru Chen  <kanru@kanru.info>
+
+       Fix reading of signed integers from files on 64bit platforms.
+
+       Previously, signed integers were converted to unsigned integers, but
+       this can fail because of sign extension.  For example, 0xa344a1eb
+       becomes 0xffffffffa344a1eb.
+
+       We now do the reverse which is always correct because the integer
+       size is the same during the cast from unsigned to signed.
+
+       * include/freetype/internal/ftstream.h, src/base/ftstream.c
+       (FT_Stream_Get*): Replace with...
+       (FT_Stream_GetU*): Functions which read unsigned integers.
+       Update all macros accordingly.
+
+       * src/gzip/ftgzip.c (ft_gzip_get_uncompressed_size): Updated.
+
+2011-04-07  Werner Lemberg  <wl@gnu.org>
+
+       Update Unicode ranges for CJK autofitter; in particular, add Hangul.
+
+       * src/autofit/afcjk.c (af_cjk_uniranges): Update to Unicode 6.0.
+
+2011-04-04  Werner Lemberg  <wl@gnu.org>
+
+       Fix formatting of autofit debug dumps.
+
+       * src/autofit/afhints.c (af_glyph_hints_dump_points,
+       af_glyph_hints_dump_segments, af_glyph_hints_dump_edges): Adjust
+       column widths.
+
+2011-03-30  Werner Lemberg  <wl@gnu.org>
+
+       * src/autofit/aftypes.h (AF_OutlineRec): Removed, unused.
+
+2011-03-24  Werner Lemberg  <wl@gnu.org>
+
+       * src/cff/cfftypes.h (CFF_MAX_CID_FONTS): Increase to 256.
+       This limit is given on p. 37 of Adobe Technical Note #5014.
+
+2011-03-23  Werner Lemberg  <wl@gnu.org>
+
+       * src/truetype/ttpload.c (tt_face_load_loca): Fix mismatch warning.
+
+2011-03-20  Werner Lemberg  <wl@gnu.org>
+
+       * src/sfnt/sfobjs.c (sfnt_open_font): Check number of TTC subfonts.
+
+2011-03-19  Werner Lemberg  <wl@gnu.org>
+
+       More C++ compilation fixes.
+
+       * src/autofit/afhints.c (af_glyph_hints_dump_points,
+       af_glyph_hints_dump_segments, af_glyph_hints_dump_edges)
+       [__cplusplus]: Protect with `extern "C"'.
+
+2011-03-18  Werner Lemberg  <wl@gnu.org>
+
+       C++ compilation fixes.
+
+       * src/autofit/aflatin.c (af_latin_hints_apply), src/autofit/afcjk.c
+       (af_cjk_hints_apply): Use cast for `dim'.
+
+2011-03-17  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       A better fix for Savannah bug #32671.
+
+       * src/smooth/ftgrays.c (gray_render_conic): Clean up code and
+       replace WHILE loop with a more natural DO-WHILE construct.
+
+2011-03-16  Werner Lemberg  <wl@gnu.org>.
+
+       * src/base/ftstroke.c (FT_StrokerRec): Remove unused `valid' field.
+       Suggested by Graham Asher.
+
+2011-03-09  Werner Lemberg  <wl@gnu.org>
+
+       Make FT_Sfnt_Table_Info return the number of SFNT tables.
+
+       * src/sfnt/sfdriver.c (sfnt_table_info): Implement it.
+       * include/freetype/tttables.h: Update documentation.
+       * docs/CHANGES: Updated.
+
+2011-03-07  Bram Tassyns  <bramt@enfocus.be>
+
+       [cff] Fix Savannah bug #27988.
+
+       * src/cff/cffobjs.c (remove_style): New function.
+       (cff_face_init): Use it to strip off the style part of the family
+       name.
+
+2011-03-07  Werner Lemberg  <wl@gnu.org>
+
+       * docs/CHANGES: Updated.
+
+2011-03-07  Alexei Podtelezhnikov  <apodtele@gmail.com>
+
+       Quick fix for Savannah bug #32671.
+
+       This isn't the optimal solution yet, but it restores the previous
+       rendering quality (more or less).
+
+       * src/smooth/ftgrays.c (gray_render_conic): Do more splitting.
+
+2011-03-06  Werner Lemberg  <wl@gnu.org>
+
+       Fix autohinting fallback.
+
+       * src/base/ftobjs.c (FT_Load_Glyph): Assure that we only check TTFs,
+       ignoring CFF-based OTFs.
+
+2011-02-27  Werner Lemberg  <wl@gnu.org>
+
+       Add AF_CONFIG_OPTION_USE_WARPER to control the autofit warper.
+
+       * devel/ftoption.h, include/freetype/config/ftoption.h
+       (AF_CONFIG_OPTION_USE_WARPER): New macro.
+       * src/autofit/aftypes.h (AF_USE_WARPER): Remove.
+
+       * src/autofit/*: s/AF_USE_WARPER/AF_CONFIG_OPTION_USE_WARPER/.
+
+       * src/autofit/afwarp.c [!AF_CONFIG_OPTION_USE_WARPER]: Replace dummy
+       variable assignment with a typedef.
+
+2011-02-26  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Slight simplifications.
+
+       * src/autofit/aflatin.c (af_latin_hints_link_segments): Remove
+       test which always returns false.
+       (af_latin_hints_compute_blue_edges): Remove redundant assignment.
+
+2011-02-24  Werner Lemberg  <wl@gnu.org>
+
+       * docs/PROBLEMS: Mention rendering differences on different
+       platforms.
+       Suggested and worded by Jason Owen <jason.a.owen@gmail.com>.
+
+2011-02-24  Werner Lemberg  <wl@gnu.org>
+
+       [autofit] Comment out unused code.
+
+       * src/autofit/aflatin.c, src/autofit/aflatin2.c
+       (af_latin_hints_compute_edges): Do it.
+
+2011-02-24  Werner Lemberg  <wl@gnu.org>
+
+       * src/autofit/afhints.h (AF_GlyphHints): Remove unused field.
+
+2011-02-20  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [cache] Fix an off-by-one bug in `FTC_Manager_RemoveFaceID'.
+       Found by <ychen1392001@yahoo.com.cn>, see detail in
+
+         http://lists.gnu.org/archive/html/freetype/2011-01/msg00023.html
+
+       * src/cache/ftccache.c (FTC_Cache_RemoveFaceID): Check the node
+       buckets[cache->p + cache->mask] too.
+
+2011-02-19  Kevin Kofler  <kevin.kofler@chello.at>
+
+       Fall back to autohinting if a TTF/OTF doesn't contain any bytecode.
+       This is Savannah patch #7471.
+
+       * src/base/ftobjs.c (FT_Load_Glyph): Implement it.
+
+2011-02-19  John Tytgat  <John.Tytgat@esko.com>
+
+       [cff] Fix subset prefix removal.
+       This is Savannah patch #7465.
+
+       * src/cff/cffobjs.c (remove_subset_prefix): Update length after
+       subset prefix removal.
+
+2011-02-13  Bradley Grainger  <bgrainger@logos.com>
+
+       Add inline assembly version of FT_MulFix for MSVC.
+
+       * include/freetype/config/ftconfig.h: Ported the FT_MulFix_i386
+       function from GNU inline assembly syntax (see #ifdef __GNUC__ block
+       above) to MASM syntax for Microsoft Visual C++.
+
+2011-02-13  Bradley Grainger  <bgrainger@logos.com>
+
+       Add project and solution files in Visual Studio 2010 format.
+
+       * builds/win32/.gitignore: Ignore user-specific cache files.
+       * builds/win32/vc2010/: Add VS2010 project & solution files, created
+       by upgrading builds/win32/vc2008/freetype.vcproj.
+       * objs/.gitignore: Ignore Visual Studio output files.
+
+2011-02-01  Werner Lemberg  <wl@gnu.org>
+
+       * src/autofit/afdummy.c: Include `aferrors.h'.
+       Problem reported by Chris Liddell <chris.liddell@artifex.com>.
+
+2011-02-01  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Ignore unknown operators in charstrings.
+       Patch suggested by Miles.Lau <sunliang_liu@foxitsoftware.com>.
+
+       * src/cff/cffgload.c (cff_decoder_parse_charstrings): Emit tracing
+       message for unknown operators and continue instead of exiting with a
+       syntax error.
+
+2011-02-01  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] FT_LOAD_PEDANTIC now affects `prep' and `fpgm' also.
+
+       * src/truetype/ttgload.c (tt_loader_init): Handle
+       `FT_LOAD_PEDANTIC'.
+       * src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep,
+       tt_size_init_bytecode, tt_size_ready_bytecode): New argument to
+       handle pedantic mode.
+       * src/truetype/ttobjs.h: Updated.
+
+2011-01-31  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Protect jump instructions against endless loops.
+
+       * src/truetype/interp.c (DO_JROT, DO_JMPR, DO_JROF): Exit with error
+       if offset is zero.
+
+2011-01-31  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Improve handling of invalid references.
+
+       * src/truetype/interp.c: Set even more TT_Err_Invalid_Reference
+       error codes only if pedantic hinting is active.  At the same time,
+       try to provide sane values which hopefully allow useful
+       continuation.  Exception to this is CALL and LOOPCALL – due to
+       possible stack corruption it is necessary to bail out.
+
+2011-01-31  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Improve handling of stack underflow.
+
+       * src/truetype/ttinterp.c (TT_RunIns, Ins_FLIPPT, Ins_DELTAP,
+       Ins_DELTAC): Exit with error only if `pedantic_hinting' is set.
+       Otherwise, try to do something sane.
+
+2011-01-30  Werner Lemberg  <wl@gnu.org>
+
+       * src/sfnt/ttmtx.c (tt_face_load_hmtx): Fix tracing message.
+
+2011-01-30  LIU Sun-Liang  <sunliang_liu@foxitsoftware.com>
+
+       [truetype]: Fix behaviour of MIAP for invalid arguments.
+
+       * src/truetype/ttinterp.c (Ins_MIAP): Set reference points even in
+       case of error.
+
+2011-01-18  Werner Lemberg  <wl@gnu.org>
+
+       [truetype] Fix handling of MIRP instruction.
+
+       Thanks to Greg Hitchcock who explained the issue.
+
+       * src/truetype/ttinterp.c (Ins_MIRP): Replace a `>=' operator with
+       `>' since the description in the specification is incorrect.
+       This fixes, for example, glyph `two' in font `Helvetica Neue LT Com
+       65 medium' at 15ppem.
+
+2011-01-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Fix ARM assembly code in include/freetype/config/ftconfig.h.
+
+       * include/freetype/config/ftconfig.h (FT_MulFix_arm):
+       Copy the maintained code from builds/unix/ftconfig.in.
+       Old GNU binutils could not accept the reduced syntax
+       `orr %0, %2, lsl #16'.  Un-omitted syntax like RVCT,
+       `orr %0, %0, %2, lsl #16' is better.  Reported by
+       Johnson Y. Yan.  The bug report by Qt developers is
+       considered too.
+
+       http://bugreports.qt.nokia.com/browse/QTBUG-6521
+
+2011-01-15  Werner Lemberg  <wl@gnu.org>
+
+       [raster] Make bbox handling the same as with Microsoft's rasterizer.
+
+       Right before B/W rasterizing, the bbox gets simply rounded to
+       integers.  This fixes, for example, glyph `three' in font `Helvetica
+       Neue LT Com 65 Medium' at 11ppem.
+
+       Thanks to Greg Hitchcock who explained this behaviour.
+
+       * src/raster/ftrend1.c (ft_raster1_render): Implement it.
+
+2011-01-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Copy -mcpu=* & -march=* options from CFLAGS to LDFLAGS.
+
+       * builds/unix/configure.raw: Consider recent gcc-standard
+       flags to specify architecture in CFLAGS & LDFLAGS
+       harmonization.  Requested by Savannah bug #32114, to
+       support multilib feature of BuildRoot SDK correctly.
+
+2011-01-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Fix off-by-one bug in CFLAGS & LDFLAGS harmonizer.
+
+       * builds/unix/configure.raw: Some important options that
+       included in CFLAGS but not in LDFLAGS are copied to
+       LDFLAGS, but the last option in CFLAGS was not checked.
+
+2011-01-13  Werner Lemberg  <wl@gnu.org>
+
+       [raster] Add undocumented drop-out rule to the other bbox side also.
+
+       * src/raster/ftraster.c (Vertical_Sweep_Drop,
+       Horizontal_Sweep_Drop): Implement it.
+
+2011-01-13  Werner Lemberg  <wl@gnu.org>
+
+       [raster] Reduce jitter value.
+
+       This catches a rendering problem with glyph `x' from Tahoma at
+       10ppem.  It seems that the increase of the precision in the change
+       from 2009-06-11 makes a larger jitter value unnecessary.
+
+       * src/raster/ftraster.c (Set_High_Precision): Implement it.
+
+2011-01-13  Werner Lemberg  <wl@gnu.org>
+
+       [raster] Handle drop-outs at glyph borders according to Microsoft.
+
+       If a drop-out rule would switch on a pixel outside of the glyph's
+       bounding box, use the right (or top) pixel instead.  This is an
+       undocumented feature, but some fonts like `Helvetica Neue LT Com 65
+       Medium' heavily rely on it.
+
+       Thanks to Greg Hitchcock who explained this behaviour.
+
+       * src/raster/ftraster.c (Vertical_Sweep_Drop,
+       Horizontal_Sweep_Drop): Implement it.
+
+2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [cache] Fix Savannah bug #31923, patch drafted by Harsha.
+
+       When a node comparator changes the cached nodes during the
+       search of a node matching with queried properties, the
+       pointers obtained before the function should be updated to
+       prevent the dereference to freed or reallocated nodes.
+       To minimize the rescan of the linked list, the update is
+       executed when the comparator notifies the change of cached
+       nodes. This change depends previous change:
+       38b272ffbbdaae276d636aec4ef84af407d16181
+
+       * src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP): Rescan the
+       top node if the cached nodes are changed.
+       * src/cache/ftccache.c (FTC_Cache_Lookup): Ditto.
+
+2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [cache] Notice if a cache query induced the node list change.
+
+       Some node comparators (comparing the cache node contents and the
+       properties specified by the query) can flush the cache node to
+       prevent the cache inflation.  The change may invalidate the pointers
+       to the node obtained before the node comparison, so it should be
+       noticed to the caller.  The problem caused by the cache node
+       changing is reported by Harsha, see Savannah bug #31923.
+
+       * src/cache/ftccache.h (FTC_Node_CompareFunc): Add new argument
+       `FT_Bool* list_changed' to indicate the change of the cached nodes
+       to the caller.
+       (FTC_CACHE_LOOKUP_CMP): Watch the change of the cached nodes by
+       `_list_changed'.
+       (FTC_CACHE_TRYLOOP_END): Take new macro argument `_list_changed'
+       and update it when `FTC_Manager_FlushN' flushes any nodes.
+
+       * src/cache/ftccback.h (ftc_snode_compare): Updated to fit with new
+       FTC_Node_CompareFunc type.
+       (ftc_gnode_compare): Ditto.
+
+       * src/cache/ftcbasic.c: Include FT_INTERNAL_OBJECTS_H to use
+       TRUE/FALSE macros.
+       (ftc_basic_gnode_compare_faceid): New argument `FT_Bool*
+       list_changed' to indicate the change of the cache nodes (anyway, it
+       is always FALSE).
+
+       * src/cache/ftccmap.c: Include FT_INTERNAL_OBJECTS_H to use
+       TRUE/FALSE macros.
+       (ftc_cmap_node_compare): New argument `FT_Bool* list_changed' to
+       indicate the change of the cache nodes (anyway, it is always FALSE).
+       (ftc_cmap_node_remove_faceid): Ditto.
+
+       * src/cache/ftccache.c (FTC_Cache_NewNode): Pass a NULL pointer to
+       `FTC_CACHE_TRYLOOP_END', because the result is not needed.
+       (FTC_Cache_Lookup): Watch the change of the cache nodes by
+       `list_changed'.
+       (FTC_Cache_RemoveFaceID): Ditto.
+
+       * src/cache/ftcglyph.c: Include FT_INTERNAL_OBJECTS_H to use
+       TRUE/FALSE macros.
+       (ftc_gnode_compare): New argument `FT_Bool* list_changed' to
+       indicate the change of the cache nodes (anyway, it is always FALSE).
+       (FTC_GNode_Compare): New argument `FT_Bool* list_changed' to be
+       passed to `ftc_gnode_compare'.
+       * src/cache/ftcglyph.h (FTC_GNode_Compare): Ditto.
+
+       * src/cache/ftcsbits.c (ftc_snode_compare): New argument `FT_Bool*
+       list_changed' to indicate the change of the cache nodes, anyway.  It
+       is updated by `FTC_CACHE_TRYLOOP'.
+       (FTC_SNode_Compare): New argument `FT_Bool* list_changed' to be
+       passed to `ftc_snode_compare'.
+       * src/cache/ftcsbits.h (FTC_SNode_Compare): Ditto.
+
+2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [cache] Fit `FTC_GNode_Compare' to `FTC_Node_CompareFunc'.
+
+       * src/cache/ftcglyph.h (FTC_GNode_Compare): Add the 3rd
+       argument `FTC_Cache  cache' to fit FTC_Node_CompareFunc
+       prototype.
+       * src/cache/ftcglyph.c (FTC_GNode_Compare): Ditto. Anyway,
+       `cache' is not used by its child `ftc_gnode_compare'.
+
+2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [cache] Deduplicate the code to get the top node by a hash.
+
+       There are several duplicated code fragments getting the top node
+       from a cache by a given hash, like:
+
+           idx = hash & cache->mask;
+           if ( idx < cache->p )
+             idx = hash & ( cache->mask * 2 + 1 );
+           pnode = cache->buckets + idx;
+
+       To remove duplication, a cpp-macro to do same work
+       `FTC_NODE__TOP_FOR_HASH' is introduced.  For non-inlined
+       configuration, non-`ftc_get_top_node_for_hash' is also introduced.
+
+       * src/cache/ftccache.h (FTC_NODE__TOP_FOR_HASH): Declare
+       and implement inlined version.
+       (FTC_CACHE_LOOKUP_CMP): Use `FTC_NODE__TOP_FOR_HASH'.
+       * src/cache/ftccache.c (ftc_get_top_node_for_hash): Non-inlined
+       version.
+       (ftc_node_hash_unlink): Use `FTC_NODE__TOP_FOR_HASH'.
+       (ftc_node_hash_link): Ditto.
+       (FTC_Cache_Lookup): Ditto.
+
+2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [cache] inline-specific functions are conditionalized.
+
+       * src/cache/ftcglyph.c (FTC_GNode_Compare): Conditionalized for
+       inlined configuration.  This function is a thin wrapper of
+       `ftc_gnode_compare' for inlined `FTC_CACHE_LOOKUP_CMP' (see
+       `nodecmp' argument).  Under non-inlined configuration,
+       `ftc_gnode_compare' is invoked by `FTC_Cache_Lookup', via
+       `FTC_Cache->clazz.node_compare'.
+
+       * src/cache/ftcglyph.h (FTC_GNode_Compare): Ditto.
+       * src/cache/ftcsbits.c (FTC_SNode_Compare): Ditto, for
+       `ftc_snode_compare'.
+       * src/cache/ftcsbits.h (FTC_SNode_Compare): Ditto.
+
+2011-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       [cache] Correct a type mismatch under non-inlined config.
+
+       * src/cache/ftcglyph.h (FTC_GCACHE_LOOKUP_CMP): `FTC_GCache_Lookup'
+       takes the node via a pointer `FTC_Node*', differently from cpp-macro
+       `FTC_CACHE_LOOKUP_CMP'.
+
+2011-01-06  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Update Jamfile to include Bzip2 support.
+
+       * Jamfile: Include src/bzip2 to project.
+       Comments for lzw, gzip, bzip2 are changed to clarify that
+       they are for compressed PCF fonts, not others.
+       (e.g. compressed BDF fonts are not supported yet)
+
+2011-01-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Update Symbian project files to include Bzip2 support.
+
+       Currently, it provides `FT_Stream_OpenBzip2' that returns
+       unimplemented error always, to prevent unresolved symbol
+       error for the applications designed for Unix systems.
+
+       * builds/symbian/bld.inf: Include ftbzip2.h.
+       * builds/symbian/freetype.mmp: Include ftbzip2.c.
+
+2011-01-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Update classic MacOS makefiles to include Bzip2 support.
+
+       Currently, it provides `FT_Stream_OpenBzip2' that returns
+       unimplemented error always, to prevent unresolved symbol
+       error for the applications designed for Unix systems.
+
+       * builds/mac/FreeType.m68k_cfm.make.txt: Include ftbzip2.c.o.
+       * builds/mac/FreeType.m68k_far.make.txt: Ditto.
+       * builds/mac/FreeType.ppc_carbon.make.txt: Include ftbzip2.c.x.
+       * builds/mac/FreeType.ppc_classic.make.txt: Ditto.
+
+2011-01-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Update Amiga makefiles to include Bzip2 support.
+
+       Currently, it provides `FT_Stream_OpenBzip2' that returns
+       unimplemented error always, to prevent unresolved symbol
+       error for the applications designed for Unix systems.
+
+       * builds/amiga/makefile: Include bzip2.ppc.o built from ftbzip2.c.
+       * builds/amiga/makefile.os4: Include bzip2.o built from ftbzip2.c.
+       * builds/amiga/smakefile: Ditto.
+
+2011-01-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       Update pkg-config tools to reflect Bzip2 support.
+
+       * builds/unix/freetype-config.in: Include `-lbz2' to
+       --libs output, if built with Bzip2 support.
+       * builds/unix/freetype2.in: Ditto.
+
+2011-01-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
+
+       * builds/unix/configure.raw: Remove `SYSTEM_BZ2LIB' macro.
+
+       SYSTEM_ZLIB is used to switch the builtin zlib source
+       or system zlib source out of FreeType2.  But ftbzip2
+       module has no builtin bzip2 library and always requires
+       system bzip2 library.  Thus SYSTEM_BZ2LIB is always yes,
+       it is not used.
+
+2011-01-03  Werner Lemberg  <wl@gnu.org>
+
+       */rules.mk: Handle `*pic.c' files.
+
+2010-12-31  Werner Lemberg  <wl@gnu.org>
+
+       * src/cff/cfftypes.h (CFF_MAX_CID_FONTS): Increase to 64.
+       Problem reported by Tom Bishop <wenlin@wenlin.com>.
+
+2010-12-31  Werner Lemberg  <wl@gnu.org>
+
+       Improve bzip2 support.
+
+       * include/freetype/ftmoderr.h: Add bzip2.
+
+       * docs/INSTALL.ANY, docs/CHANGES: Updated.
+
+       * src/pcf/README: Updated.
+       * include/freetype/internal/pcftypes.h: Obsolete, removed.
+
+2010-12-31  Joel Klinghed  <the_jk@yahoo.com>
+
+       Add bzip2 compression support to handle *.pcf.bz2 files.
+
+       * builds/unix/configure.raw: Test for libbz2 library.
+
+       * devel/ftoption.h, include/freetype/config/ftoption.h
+       (FT_CONFIG_OPTION_USE_BZIP2): Define.
+       * include/freetype/config/ftheader.h (FT_BZIP2_H): Define.
+
+       * include/freetype/ftbzip2.h: New file.
+
+       * src/bzip2/*: New files.
+
+       * src/pcf/pcf.h: s/gzip_/comp_/.
+       * src/pcf/pcfdrvr.c: Include FT_BZIP2_H.
+       s/gzip_/comp_/.
+       (PCF_Face_Init): Handle bzip2 compressed files.
+
+       * docs/formats.txt, modules.cfg: Updated.
+
+2010-12-25  Harsha  <mm.harsha@gmail.com>
+
+       Apply Savannah patch #7422.
+
+       If we encounter a space in a string then the sbit buffer is NULL,
+       height and width are 0s.  So the check in ftc_snode_compare will
+       always pass for spaces (comparision with 255).  Here the comments
+       above the condition are proper but the implementation is not.  When
+       we create an snode I think it is the proper way to initialize the
+       width to 255 and then put a check for being equal to 255 in snode
+       compare function.
+
+       * src/cache/ftcsbits.c (FTC_SNode_New): Initialize sbit widths with
+       value 255.
+       (ftc_snode_compare): Fix condition.
+
+2010-12-13  Werner Lemberg  <wl@gnu.org>
+
+       Fix parameter handling of `FT_Set_Renderer'.
+       Reported by Kirill Tishin <siege@bk.ru>.
+
+       * src/base/ftobjs.c (FT_Set_Renderer): Increment `parameters'.
+
+2010-12-09  Werner Lemberg  <wl@gnu.org>
+
+       [cff] Allow `hlineto' and `vlineto' without arguments.
+
+       We simply ignore such instructions.  This is invalid, but it doesn't
+       harm; and indeed, there exist such subsetted fonts in PDFs.
+
+       Reported by Albert Astals Cid <aacid@kde.org>.
+
+       * src/cff/cffgload.c (cff_decoder_parse_charstrings)
+       [cff_op_hlineto]: Ignore instruction if there aren't any arguments
+       on the stack.
+
 2010-11-28  Werner Lemberg  <wl@gnu.org>
 
        * Version 2.4.4 released.
 
 2010-11-04  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
 
-       [UVS] Fix find_variant_selector_charmap(), Savannah bug #31545.
+       [UVS] Fix `find_variant_selector_charmap', Savannah bug #31545.
 
-       Since 2010-07-04, find_variant_selector_charmap() returns
+       Since 2010-07-04, `find_variant_selector_charmap' returns
        the first cmap subtable always under rogue-compatible
        configuration, it causes NULL pointer dereference and
        make UVS-related functions crashed.
 
 2010-10-25  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
 
-       Revert a change of `_idx' type in FTC_CACHE_LOOKUP_CMP().
+       Revert a change of `_idx' type in `FTC_CACHE_LOOKUP_CMP'.
 
        * src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP): Revert
        the type of `_idx' from FT_PtrDist (by previous change)
 
        On LLP64 platforms (e.g. Win64), FT_ULong (32-bit)
        variables are inappropriate to calculate hash values
-       from the memory address (64-bit).  The hash variables  
+       from the memory address (64-bit).  The hash variables
        are extended from FT_ULong to FT_PtrDist and new
        hashing macro functions are introduced.  The hash
        values on 16-bit memory platforms are changed, but
        address, so using signed type FT_PtrDist is safe.
 
        * src/cache/ftccache.h (_FTC_FACE_ID_HASH): New hash
-       function to replace FTC_FACE_ID_HASH() for portability.
-       * src/cache/ftcmanag.h (FTC_SCALER_HASH): Replace 
-       FTC_FACE_ID_HASH() by _FTC_FACE_ID_HASH().
+       function to replace `FTC_FACE_ID_HASH' for portability.
+       * src/cache/ftcmanag.h (FTC_SCALER_HASH): Replace
+       `FTC_FACE_ID_HASH' by `_FTC_FACE_ID_HASH'.
        * src/cache/ftccmap.c (FTC_CMAP_HASH): Ditto.
 
        * src/cache/ftccache.h (FTC_NodeRec): The type of the
        * src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP): Ditto.
        Also the type of the internal variable `_idx' is changed to
        FT_PtrDist from FT_UFast for better pointer calculation.
-       
+
 2010-10-24  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
 
        [cache] Hide internal macros incompatible with LLP64.
 
-       FT_POINTER_TO_ULONG(), FTC_FACE_ID_HASH() and
-       FTC_IMAGE_TYPE_HASH() are enclosed by
+       `FT_POINTER_TO_ULONG', `FTC_FACE_ID_HASH', and
+       `FTC_IMAGE_TYPE_HASH' are enclosed by
        FT_CONFIG_OPTION_OLD_INTERNALS and hidden from
        normal clients.
 
 
 2010-10-24  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
 
-       Change the type of FT_MEM_VAL() from FT_ULong to FT_PtrDist.
+       Change the type of `FT_MEM_VAL' from FT_ULong to FT_PtrDist.
 
        On LLP64 platforms (e.g. Win64), unsigned long (32-bit)
-       cannot cover the memory address (64-bit).  FT_MEM_VAL() is
+       cannot cover the memory address (64-bit).  `FT_MEM_VAL' is
        used for hashing only and not dereferred, so using signed
        type FT_PtrDist is safe.
 
                http://trac.macports.org/ticket/18859
 
        * src/base/ftobjs.c (load_face_in_embedded_rfork):
-       When FT_Stream_New() returns FT_Err_Cannot_Open_Stream, it
-       means that the file is possible to be fopen()-ed but zero-sized.
-       Also there is a case that the resource fork is not zero-sized, 
+       When `FT_Stream_New' returns FT_Err_Cannot_Open_Stream, it
+       means that the file is possible to be `fopen'-ed but zero-sized.
+       Also there is a case that the resource fork is not zero-sized,
        but no supported font exists in it.  If a rule by Darwin VFS
        falls into such cases, there is no need to try other Darwin VFS
        rules anymore.  Such cases are marked by vfs_rfork_has_no_font.
        a resource fork via ANSI C or POSIX interface.  Current resource
        fork accessor tries all possible methods to support all kernels.
        But if a method could open a resource fork but no font is found,
-       there is no need to try other methods older than tested method. 
+       there is no need to try other methods older than tested method.
        To determine whether the rule index is for Darwin VFS, a local
-       function ftrfork.c::raccess_rule_by_darwin_vfs() is introduced.
+       function `ftrfork.c::raccess_rule_by_darwin_vfs' is introduced.
        To use this function in ftobjs.c etc but it should be inlined,
        it is exposed by ftbase.h.
 
 
 2010-10-12  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #31310.
+       [truetype] Fix Savannah bug #31310.
 
        * src/truetype/ttgxvar.c (ft_var_readpackedpoints): Protect against
        invalid `runcnt' values.
 
 2010-10-08  Chris Liddell  <chris.liddell@artifex.com>
 
-       Fix Savannah bug #31275.
+       [sfnt] Fix Savannah bug #31275.
 
        * src/sfnt/ttpost.c: Include FT_INTERNAL_DEBUG_H.
 
 
 2010-10-02  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #31088 (sort of).
+       [sfnt] Fix Savannah bug #31088 (sort of).
 
        * src/sfnt/ttload.c (tt_face_load_maxp): Always allocate at least 64
        function entries.
 
 2010-10-01  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
 
-       Fix Savannah bug #31040.
+       [truetype] Fix Savannah bug #31040.
 
        * src/truetype/ttinterp.c (free_buffer_in_size): Remove.
        (TT_RunIns): Updated.
        * src/cff/cffload.c (cff_index_access_element): `off2', the offset
        to the next element is truncated at the end of the stream to prevent
        invalid I/O.  As `off1', the offset to the requested element has
-       been checked by FT_STREAM_SEEK(), `off2' should be checked
+       been checked by `FT_STREAM_SEEK', `off2' should be checked
        similarly.
 
 2010-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
 
 2010-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
 
-       [cff] Make trace message in cff_charset_load() verbose.
+       [cff] Make trace message in` cff_charset_load' verbose.
        See Savannah bug #30975.
 
        * src/cff/cffload.c (cff_charset_load): Report the original `nleft'
        See Savannah bug #31040.
 
        * src/sfnt/ttpost.c (load_post_names): Get the length of `post'
-       table and pass the limit of `post' table to load_format_20() and
-       load_format_25().
+       table and pass the limit of `post' table to `load_format_20' and
+       `load_format_25'.
        (load_format_20): Stop the parsing when we reached at the limit of
        `post' table.  If more glyph names are required, they are filled by
        NULL names.
 
        * src/truetype/ttinterp.c (free_buffer_in_size): Don't duplicate
        FT_GlyphZoneRec size->twilight to be freed.  If duplicated,
-       FT_FREE() erases the duplicated pointers only and leave original
+       `FT_FREE' erases the duplicated pointers only and leave original
        pointers.  They can cause the double-free crash when the burst
-       errors occur in TrueType interpreter and free_buffer_in_size() is
+       errors occur in TrueType interpreter and `free_buffer_in_size' is
        invoked repeatedly.
 
 2010-09-15  Werner Lemberg  <wl@gnu.org>
 
        * src/truetype/ttinterp.c (TT_RunIns): Decrease the trace level
        showing the error when the interpreter returns with an error,
-       from FT_TRACE7() to FT_TRACE1().
+       from` FT_TRACE7' to `FT_TRACE1'.
 
 2010-08-30  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
 
 
 2010-08-17  Teijo Kinnunen <Teijo.Kinnunen@nuance.com>
 
-       Fix Savannah bug #30788.
+       [cache] Fix Savannah bug #30788.
 
        * src/cache/ftccache.c (FTC_Cache_Clear): Check `cache->buckets' for
        NULL too.
 
 2010-08-05  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30657.
+       [truetype] Fix Savannah bug #30657.
 
        * src/truetype/ttinterp.c (BOUNDSL): New macro.
        Change `BOUNDS' to `BOUNDSL' where appropriate.
 
 2010-08-05  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30656.
+       [type42] Fix Savannah bug #30656.
 
        * src/type42/t42parse.c (t42_parse_sfnts): Protect against negative
        string_size.
        [cff] Don't use any values in decoder after parsing error.
 
        * src/cff/cffgload.c (cff_slot_load): Skip the evaluations
-       of the values in decoder, if cff_decoder_parse_charstrings()
+       of the values in decoder, if `cff_decoder_parse_charstrings'
        returns any error.
 
 2010-08-04  Werner Lemberg  <wl@gnu.org>
 
 2010-07-08  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30361.
+       [truetype] Fix Savannah bug #30361.
 
        * src/truetype/ttinterp.c (Ins_IUP): Fix bounds check.
 
 
 2010-06-30  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30263.
+       [smooth] Fix Savannah bug #30263.
 
        * src/smooth/ftgrays.c (gray_render_span): Use cast to `unsigned
        int' to avoid integer overflow.
 
 2010-06-26  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30262.
+       [sfnt] Fix Savannah bug #30262.
 
        * src/sfnt/ttload.c (tt_face_load_maxp): Limit `maxComponentDepth'
        arbitrarily to 100 to avoid stack exhaustion.
 
 2010-06-25  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30261.
+       [pfr] Fix Savannah bug #30261.
 
        * src/pfr/pfrobjs.c (pfr_face_init): Reject fonts which contain
        neither outline nor bitmap glyphs.
 
 2010-06-25  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30254.
+       [cff] Fix Savannah bug #30254.
 
        * src/cff/cffload.c (cff_index_get_pointers): Do sanity check for
        first offset also.
 
 2010-06-24  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30247.
+       [pcf] Fix Savannah bug #30247.
 
        * src/pcf/pcfread.c (pcf_get_metrics): Disallow (invalid) fonts with
        zero metrics.
 
 2010-06-24  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30236.
+       [sfnt] Fix Savannah bug #30236.
 
        * src/sfnt/ttcmap.c (tt_face_build_cmaps): Improve check for pointer
        to `cmap_table'.
 
 2010-06-24  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30235.
+       [pfr] 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-23  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30220.
+       [bdf] Fix Savannah bug #30220.
 
        * include/freetype/fterrdef.h
        (BDF_Err_Missing_Fontboundingbox_Field): New error code.
 
 2010-06-21  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30168.
+       [pfr] Fix Savannah bug #30168.
 
        * src/pfr/pfrgload.c (pfr_glyph_load_compound): Limit the number of
        subglyphs to avoid endless recursion.
 
 2010-06-20  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30145.
+       [psaux] Fix Savannah bug #30145.
 
        * src/psaux/psobjs.c (t1_builder_add_contour): Protect against
        `outline == NULL' which might happen in invalid fonts.
 
 2010-06-19  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30135.
+       [bdf] Fix Savannah bug #30135.
 
        * src/bdf/bdflib.c (_bdf_list_join): Don't modify value in static
        string `empty'.
 
 2010-06-15  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30108.
+       [autofit] Fix Savannah bug #30108.
 
        * src/autofit/afglobal.c (af_face_globals_compute_script_coverage):
        Properly mask AF_DIGIT bit in comparison.
 
 2010-06-11  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30106.
+       [pshinter] Fix Savannah bug #30106.
 
        Point numbers for FreeType's implementation of hinting masks are
        collected before the final number of points of a glyph has been
 
 2010-06-09  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30082.
+       [cff] Fix Savannah bug #30082.
 
        * src/cff/cffgload.c (cff_decoder_parse_charstrings)
        <cff_op_callothersubr>: Protect against stack underflow.
 
 2010-06-08  Werner Lemberg  <wl@gnu.org>
 
-       Fix Savannah bug #30053.
+       [cff] Fix Savannah bug #30053.
 
        * src/cff/cffparse.c (cff_parse_real): Handle border case where
        `fraction_length' has value 10.
 
 2010-05-21  Bram Tassyns  <bramt@enfocus.be>
 
-       Fix Savannah bug #27987.
+       [cff] Fix Savannah bug #27987.
 
        * src/cff/cffobjs.c (remove_subset_prefix): New function.
        (cff_face_init): Use it to adjust `cffface->family_name'.
 
 2010-05-10  Ken Sharp  <ken.sharp@artifex.com>
 
-       Fix Savannah bug #29846.
+       [psaux] Fix Savannah bug #29846.
 
        Previously we discovered fonts which used `setcurrentpoint' to set
        the initial point of a contour to 0,0.  This caused FreeType to
        and real proper usage of the operator to work the same way as Adobe
        interpreters apparently do.
 
-       (t1_decoder_parse_charstrings): Make `setcurrentpoint' use the top
-       two elements of the stack to establish unconditionally the current x
-       and y coordinates.
+       * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Make
+       `setcurrentpoint' use the top two elements of the stack to establish
+       unconditionally the current x and y coordinates.
 
        Make the `flex' subroutine handling (OtherSubr 0) put the current
        x,y coordinates onto the stack, instead of two dummy uninitialised
 
 2010-04-14  Ken Sharp  <ken.sharp@artifex.com>
 
-       Fix Savannah bug #29444.
+       [psaux] Fix Savannah bug #29444.
 
        * src/psaux/psobjs.c (t1_builder_start_point): Accept (invalid)
        `lineto' immediately after `hsbw', in accordance with Acrobat, GS,
 
 2010-04-14  Michał Cichoń  <thedmd@artifexmundi.com>
 
-       Fix Savannah bug #27999.
+       [psaux] Fix Savannah bug #27999.
 
        * src/cache/ftcmanag.c (FTC_Manager_RemoveFaceID): Only remove
        selected entry, not all.
 
 2010-04-06  Jonathan Kew  <jfkthame@gmail.com>
 
-       Add overflow check to `fvar' table.
+       [truetype] Add overflow check to `fvar' table.
 
        * src/truetype/ttgxvar.c (TT_Get_MM_Var): Check axis and instance
        count.
 
 2010-04-05  Ken Sharp  <ken.sharp@artifex.com>
 
-       Fix Savannah bug #29335.
+       [raster] Fix Savannah bug #29335.
 
        * src/raster/ftraster.c (Line_Up): Use slow multiplication to
        prevent overflow.  This shouldn't have any serious impact on speed,
 
 2010-04-01  John Tytgat  <John.Tytgat@esko.com>
 
-       Fix Savannah bug #29404.
+       [truetype] Fix Savannah bug #29404.
 
        * src/truetype/ttgload.c: Revert change 2752bd1a (check on bit 1
        of `head' table of TrueType fonts).
 
 2010-03-11  Chris Liddell  <chris.liddell@artifex.com>
 
-       Fix Savannah bug #27442.
+       [raster] Fix Savannah bug #27442.
 
        * src/raster/ftraster.c (ft_black_reset): Fix `buffer_size'.
 
 2010-03-09  Werner Lemberg  <wl@gnu.org>
 
-       Remove unused variable.
+       [cff] Remove unused variable.
        Reported by Graham.
 
        * src/cff/cffparse.c (cff_parse_real): Remove `rest'.
 
 2010-03-02  John Tytgat  <John.Tytgat@esko.com>
 
-       Improve CFF string (especially glyphname) lookup performance.
+       [cff] Improve CFF string (especially glyphname) lookup performance.
 
        We do this by avoiding memory allocation and file I/O.  This is
        Savannah patch #7104.
 
 2010-02-18  Chris Liddell  <chris.liddell@artifex.com>
 
-       Fix Savannah bug #28905.
+       [truetype] Fix Savannah bug #28905.
 
        Initialize phantom points before calling the incremental interface
        to update glyph metrics.
 
 ----------------------------------------------------------------------------
 
-Copyright 2010 by
+Copyright 2010-2013 by
 David Turner, Robert Wilhelm, and Werner Lemberg.
 
 This file is part of the FreeType project, and may only be used, modified,
diff --git a/reactos/lib/3rdparty/freetype/ChangeLog.20 b/reactos/lib/3rdparty/freetype/ChangeLog.20
deleted file mode 100644 (file)
index 8fcc5e7..0000000
+++ /dev/null
@@ -1,2613 +0,0 @@
-2002-02-09  Werner Lemberg  <wl@gnu.org>
-
-       * README: Fix typo.
-       * docs/CHANGES: Minor fixes.
-
-
-       * Version 2.0.8 released.
-       =========================
-
-
-2002-02-08  David Turner  <david@freetype.org>
-
-       * docs/CHANGES: Updating for 2.0.8.
-
-       * include/freetype/freetype.h: Setting `PATCH_LEVEL' to 8 and
-       removing `FT_Get_Next_Char' from the API (temporarily).
-
-       * include/freetype/freetype.h: Adding comments to FT_Get_Next_Char;
-       note that this function might temporarily be removed for the 2.0.8
-       release.
-
-2002-02-07  David Turner  <david@freetype.org>
-
-       * src/pcf/pcfread.c (pcf_load_font): Removed immature support of
-       the AVERAGE_WIDTH property.
-
-2002-02-06  David Turner  <david@freetype.org>
-
-       * src/sfnt/sfobjs.c (SFNT_Load_Face): Since many fonts embedded in
-       PDF documents do not include 'cmap', 'post' and 'name' tables, the
-       SFNT face loader has been changed to not immediately report an
-       error if these are not present.
-
-       Note that the specification _requires_ these tables, but Adobe
-       seems to ignore it completely.
-
-       * src/sfnt/ttcmap.c: Removing compiler warnings.
-
-       * src/pcf/pcfread.c (pcf_read_TOC): Use FT_UInt.
-       (pcf_parse_metric, pcf_parse_compressed_metric): Removed.  Code
-       is now in ...
-       (pcf_get_metric): Here.
-       (pcfSeekToType): Renamed to ...
-       (pcf_seek_to_table_type): This.
-       Use FT_Int.
-       (pcfHasType): Renamed to ...
-       (pcf_has_table_type): This.
-       Use FT_Int.
-       (find_property): Renamed to ...
-       (pcf_find_property): This.
-       Use FT_Int.
-       (pcf_get_bitmaps, pcf_get_encodings): Handle invalid PCF fonts
-       better (delaying format checks out of FT_Access_Frame ..
-       FT_Forget_Frame blocks to avoid leaving the stream in an incorrect
-       state when encountering an invalid PCF font).
-
-       * src/pcf/pcfdriver.c (PCF_Done_Face): Renamed to ...
-       (PCF_Face_Done): This.
-       (PCF_Init_Face): Renamed to ...
-       (PCF_Face_Init): This.
-       (PCF_Get_Char_Index): Renamed to ...
-       (PCF_Char_Get_Index): This.
-       (PCF_Get_Next_Char): Renamed to ...
-       (PCF_Char_Get_Next): This.
-       (pcf_driver_class): Updated.
-
-       * src/pcf/pcf.h (PCF_Done_Face): Removed.
-
-2002-02-06  Detlef Würkner  <TetiSoft@apg.lahn.de>
-
-       * src/pcf/pcfdriver.c (FT_Done_Face): Fixed small memory leak.
-
-       * src/pcf/pcfread.c (pcf_load_font): Now handles the `AVERAGE_WIDTH'
-       property to return correct character pixel (width/height) pairs for
-       embedded bitmaps.
-
-2002-02-04  Keith Packard  <keithp@keithp.com>
-
-       Adding the function `FT_Get_Next_Char', doing the obvious thing
-       w.r.t. the selected charmap.
-
-       * include/freetype/freetype.h: Add prototype.
-       * include/freetype/internal/ftdriver.h: Add `FTDriver_getNextChar'
-       typedef.
-       (FT_Driver_Class): Use it.
-       * include/freetype/internal/psnames.h: Add `PS_Next_Unicode_Func'
-       typedef.
-       (PSNames_Interface): Use it.
-       * include/freetype/internal/tttypes.h: Add `TT_CharNext_Func'
-       typedef.
-       (TT_CMapTable): Use it.
-
-       * src/base/ftobjs.c (FT_Get_Next_Char): New function, implementing
-       high-level API.
-       * src/cff/cffdrivr.c (cff_get_next_char): New function.
-       (cff_driver_class): Add it.
-       * src/cid/cidriver.c (Cid_Get_Next_Char): New function.
-       (t1cid_driver_class): Add it.
-       * src/pcf/pcfdriver.c (PCF_Get_Next_Char): New function.
-       (pcf_driver_class): Add it.
-       * src/psnames/psmodule.c (PS_Next_Unicode): New function.
-       (psnames_interface): Add it.
-       * src/sfnt/ttcmap.c (code_to_next0, code_to_next2, code_to_next4,
-       code_to_next6, code_to_next_8_12, code_to_next_10): New auxiliary
-       functions.
-       (TT_CharMap_Load): Use them.
-       * src/truetype/ttdriver.c (Get_Next_Char): New function.
-       (tt_driver_class): Add it.
-       * src/type1/t1driver.c (Get_Next_Char): New function.
-       (t1_driver_class): Add it.
-       * src/winfonts/winfnt.c (FNT_Get_Next_Char): New function.
-       (winfnt_driver_class): Add it.
-
-       * src/pcf/pcfread.c (pcf_load_font): For now, report Unicode for
-       Unicode and Latin 1 encodings.
-
-2002-02-02  Keith Packard  <keithp@keithp.com>
-
-       * builds/unix/freetype-config.in: Add missing `fi'.
-
-
-       * Version 2.0.7 released.
-       =========================
-
-
-2002-02-01  David Turner  <david@freetype.org>
-
-       * include/freetype/freetype.h: Increasing FREETYPE_PATCH to 7
-       for the new release.
-
-2002-01-31  David Turner  <david@freetype.org>
-
-       * README, README.UNX, docs/CHANGES: Updating documentation for the
-       2.0.7 release.
-
-2002-01-30  David Turner  <david@freetype.org>
-
-       * INSTALL: Moved to ...
-       * docs/INSTALL: Here to avoid conflicts with the `install' script on
-       Windows, where the filesystem doesn't preserve case.
-
-2002-01-29  David Turner  <david@freetype.org>
-
-       * configure: Fixed the script.  It previously didn't accept more
-       than one argument correctly.  For example, when typing:
-
-         ./configure --disable-shared --disable-nls
-
-       the `--disable-nls' was incorrectly sent to the `make' program.
-
-2002-01-29  Werner Lemberg  <wl@gnu.org>
-
-       * README.UNX: Fix typo.
-       * builds/unix/install.mk (uninstall): Fix library name for libtool.
-
-2002-01-28  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli@ens.fr>
-
-       * src/pcf/pcfdriver.c (PCF_Done_Face): Fix incorrect destruction of
-       the face object (face->toc.tables, face->root.family_name,
-       face->root.available_size, face->charset_encoding,
-       face->charset_registry are now freed).  Thanks to Niels Moseley.
-
-2002-01-28  Roberto Alameda  <ojancano@geekmail.de>
-
-       * src/type1/t1load.c (parse_encoding): Set `loader->num_chars'.
-
-2002-01-28  Werner Lemberg  <wl@gnu.org>
-
-       * src/type1/t1load.c (parse_subrs, parse_charstrings): Use copy
-       of `base' string for decrypting to not modify the original data.
-       Based on a patch by Jakub Bogusz <qboosh@pld.org.pl>.
-
-2002-01-27  Giuliano Pochini  <pochini@shiny.it>
-
-       * src/smooth/ftgrays.c (gray_render_scanline): Fix bug which caused
-       bad rendering of thin lines (less than one pixel thick).
-
-2002-01-25  Werner Lemberg  <wl@gnu.org>
-
-       * src/cff/cffdrivr.c (cff_get_name_index): Make last patch work
-       actually.
-
-2002-01-25  Martin Zinser  <zinser@decus.de>
-
-       * src/cache/ftccache.c (ftc_node_done, ftc_node_destroy): Fix
-       compilation warnings.
-       * src/base/descrip.mms (OBJS): Add `ftmm.obj'.
-       * src/cache/descrip.mms (ftcache.obj): Dependencies added.
-
-2002-01-25  WANG Yi  <wangyi@founder.com.cn>
-
-       * src/cff/cffdrivr.c (cff_get_name_index): Fix deallocation bug.
-
-2002-01-21  Antoine Leca  <Antoine-Freetype@Leca-Marti.org>
-
-       * docs/PATENTS: Typo fixed (thanks to Detlef `Hawkeye' Würkner) in
-       the URL for the online resource.
-
-2002-01-18  Ian Brown  <ian.brown@printsoft.de>
-
-       * builds/win32/ftdebug.c: New file.
-       * builds/win32/visualc/freetype.dsp: Updated.
-
-2002-01-18  Detlef Würkner  <TetiSoft@apg.lahn.de>
-
-       * builds/amiga/src/base/ftsystem.c: Updated for AmigaOS 3.9.
-       * builds/amiga/README: Updated.
-
-2002-01-18  Ian Brown  <ian.brown@printsoft.de>
-
-       * builds/win32/visualc/freetype.dsp: Updated.
-
-2002-01-13  Werner Lemberg  <wl@gnu.org>
-
-       * builds/unix/freetype2.a4: The script was still buggy.
-       * builds/unix/freetype-config.in: Make it really work for any install
-       prefix.
-
-2002-01-10  Werner Lemberg  <wl@gnu.org>
-
-       * builds/unix/freetype2.a4: Fix some serious bugs.
-
-2002-01-09  David Turner  <david@freetype.org>
-
-       * builds/unix/configure.ac: Build top-level Jamfile.
-
-2002-01-09  Maxim Shemanarev  <mcseemagg@yahoo.com>
-
-       * src/smooth/ftgrays.c (gray_render_line): Small optimization to
-       the smooth anti-aliased renderer that deals with vertical segments.
-       This results in a 5-7% speedup in rendering speed.
-
-2002-01-08  David Turner  <david@freetype.org>
-
-       Added some wrapper scripts to make the installation more
-       Unix-friendly.
-
-       * configure, install: New files.
-
-       * INSTALL, README.UNX: Updated installation documentation to use the
-       new 'configure' and 'install' scripts.
-
-2002-01-07  David Turner  <david@freetype.org>
-
-
-       * Version 2.0.6 released.
-       =========================
-
-
-       * docs/BUGS, docs/CHANGES: Updating documentation for 2.0.6 release.
-
-       * src/tools/docmaker.py: Fixed HTML quoting in sources.
-       (html_format): Replaced with ...
-       (html_quote): New function.
-       (html_quote0): New function.
-       (DocCode::dump_html): Small improvement.
-       (DocParagraph::dump, DocBlock::html): Use html_quote0 and html_quote.
-
-       * include/freetype/config/ftoption.h: Setting default options for
-       a release build (debugging off, bytecode interpreter off).
-
-       * src/base/ftobjs.c, src/base/ftoutln.c, src/cache/ftccmap.c,
-       src/cff/cffload.c, src/cff/cffobjs.c, src/pshinter/pshalgo2.c,
-       src/sfnt/ttload.c, src/sfnt/ttsbit.c: Removing small compiler
-       warnings (in pedantic compilation modes).
-
-2002-01-05  David Turner  <david@freetype.org>
-
-       * src/autohint/ahhint.c (ah_align_linked_edge): Modified computation
-       of auto-hinted stem widths; this avoids color fringes in
-       `ClearType-like' rendering.
-
-       * src/truetype/ttgload.c (TT_Load_Glyph_Header,
-       TT_Load_Simple_Glyph, TT_Load_Composite_Glyph, load_truetype_glyph):
-       Modified the TrueType loader to make it more paranoid; this avoids
-       nasty buffer overflows in the case of invalid glyph data (as
-       encountered in the output of some buggy font converters).
-
-2002-01-04  David Turner  <david@freetype.org>
-
-       * README.UNX: Added special README file for Unix users.
-
-       * builds/unix/ftsystem.c (FT_New_Stream): Fixed typo.
-
-       * src/base/ftobjs.c: Added #include FT_OUTLINE_H to get rid
-       of compiler warnings.
-
-       * src/base/ftoutln.c (FT_Outline_Check): Remove compiler warning.
-
-2002-01-03  Werner Lemberg  <wl@gnu.org>
-
-       * src/type1/t1objs.c (T1_Face_Init): Add cast to avoid compiler
-       warning.
-
-2002-01-03  Keith Packard  <keithp@keithp.com>
-
-       * builds/unix/ftsystem.c (FT_New_Stream): Added a fix to ensure that
-       all FreeType input streams are closed in child processes of a `fork'
-       on Unix systems.  This is important to avoid (potential) access
-       control issues.
-
-2002-01-03  David Turner  <david@freetype.org>
-
-       * src/type1/t1objs.c (T1_Face_Init): Fixed a bug that crashed the
-       library when dealing with certain weird fonts like `Stalingrad', in
-       `sadn.pfb' (this font has no full font name entry).
-
-       * src/base/ftoutln.c, include/freetype/ftoutln.h (FT_Outline_Check):
-       New function to check the consistency of outline data.
-
-       * src/base/ftobjs.c (FT_Load_Glyph): Use `FT_Outline_Check' to
-       ensure that loaded glyphs are valid.  This allows certain fonts like
-       `tt1095m_.ttf' to be loaded even though it appears they contain
-       really funky glyphs.
-
-       There still is a bug there, though.
-
-       * src/truetype/ttgload.c (load_truetype_glyph): Fix error condition.
-
-2001-12-30  David Turner  <david@freetype.org>
-
-       * src/autohint/ahhint.c (ah_hinter_load): Fix advance width
-       computation of auto-hinted glyphs.  This noticeably improves the
-       spacing of letters in KDE and Gnome.
-
-2001-12-25  Antoine Leca  <Antoine-Freetype@Leca-Marti.org>
-
-       * builds/dos/detect.mk: Correcting the order for Borland compilers:
-       16-bit bcc was never selected, always overridden by 32-bit bcc32.
-
-2001-12-22  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli@ens.fr>
-
-       * src/pfc/pcfread.c (pcf_load_font): Handle property `POINT_SIZE'
-       and fix incorrect computation of `available_sizes'.
-
-2001-12-22  David Turner  <david@freetype.org>
-
-       * src/autohint/ahhint.c (ah_hinter_load): Auto-hinted glyphs had an
-       incorrect glyph advance in the case of mono-width fonts (like
-       Courier, Andale Mono, and others).
-
-2001-12-22  Detlef Würkner  <TetiSoft@apg.lahn.de>
-
-       * builds/amiga/*: Adaptations to latest changes.
-       Support added for MorphOS.
-
-2001-12-22  Werner Lemberg  <wl@gnu.org>
-
-       * src/pshinter/pshrec.c (FT_COMPONENT): Redefine to `trace_pshrec'.
-       (ps_mask_table_merge, ps_hints_open, ps_hints_stem,
-       ps_hints_t1stem3, ps_hints_t2mask, ps_hints_t2counter): Fix
-       FT_ERROR messages.
-       * src/pshinter/pshalgo1.c (FT_COMPONENT): Define as
-       `trace_pshalgo1'.
-       * src/pshinter/pshalgo2.c (FT_COMPONENT): Define as
-       `trace_pshalgo2'.
-       * include/freetype/internal/ftdebug.h (FT_Trace): Updated.
-
-       * docs/modules.txt: New file.
-
-2001-12-21  David Turner  <david@freetype.org>
-
-       * src/pshinter/pshrec.c (ps_hints_t2mask, ps_hints_t2counter):
-       Ignore invalid `hintmask' and `cntrmask' operators (instead of
-       returning an error).  Glyph 2028 of the CFF font `MSung-Light-Acro'
-       couldn't be rendered otherwise (it seems its charstring is buggy,
-       though this requires more analysis).
-       (FT_COMPONENT): Define.
-
-       * src/cff/cffgload.c (CFF_Parse_CharStrings), src/psaux/t1decode.c
-       (T1_Decoder_Parse_Charstrings), src/pshinter/pshalgo2.c (*), Fixed a
-       bug where the X and Y axis where inverted in the postscript hinter.
-       This caused problem when displaying on non-square surfaces.
-
-       * src/pshinter/pshalgo2.c: s/vertical/dimension/.
-
-       * src/pshinter/pshglob.c (psh_globals_new): Replaced a floating
-       point constant with a fixed-float equivalent.  For some reasons not
-       all compilers are capable of directly computing a floating pointer
-       constant casted to FT_Fixed, and will link a math library instead.
-
-2001-12-20  Werner Lemberg  <wl@gnu.org>
-
-       * src/cache/ftccache.c (ftc_node_destroy, ftc_cache_lookup): Fix
-       tracing strings.
-       * src/cache/ftccmap.c (ftc_cmap_family_init): Ditto.
-       * src/cache/ftcmanag.c (ftc_family_table_alloc,
-       ftc_family_table_free, FTC_Manager_Check): Ditto.
-       * src/cache/ftcsbits.c (ftc_sbit_node_load): Ditto.
-
-       * src/base/ftobjs.c (FT_Done_Library): Remove compiler warning.
-
-2001-12-20  David Turner  <david@freetype.org>
-
-       Added PostScript hinter support to the CFF and CID drivers.
-
-       * include/freetype/internal/cfftypes.h (CFF_Font): New member
-       `pshinter'.
-       * src/cff/cffload.c (CFF_Get_Standard_Encoding): New function.
-       * src/cff/cffload.h: Updated.
-       * src/cff/cffgload.c (CFF_Init_Builder): Renamed to ...
-       (CFF_Builder_Init): This.
-       Added new argument `hinting'.
-       (CFF_Done_Builder): Renamed to ...
-       (CFF_Builder_Done): This.
-       (CFF_Init_Decoder): Added new argument `hinting'.
-       (CFF_Parse_CharStrings): Implement vstem support.
-       (CFF_Load_Glyph): Updated.
-       Add hinting support.
-       (cff_lookup_glyph_by_stdcharcode): Use CFF_Get_Standard_Encoding().
-       (cff_argument_counts): Updated.
-       * src/cff/cffgload.h: Updated.
-       * src/cff/cffobjs.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
-       (CFF_Size_Get_Globals_Funcs, CFF_Size_Done, CFF_Size_Init,
-       CFF_Size_Reset, CFF_GlyphSlot_Done, CFF_GLyphSlot_Init): New
-       functions.
-       (CFF_Init_Face): Renamed to ...
-       (CFF_Face_Init): This.
-       Add hinter support.
-       (CFF_Done_Face): Renamed to ...
-       (CFF_Face_Done): This.
-       (CFF_Init_Driver): Renamed to ...
-       (CFF_Driver_Init): This.
-       (CFF_Done_Driver): Renamed to ...
-       (CFF_Driver_Done): This.
-       * src/cff/cffobjs.h: Updated.
-       * src/cff/cffdrivr.c (cff_driver_class): Updated.
-
-       * include/freetype/internal/t1types.h (CID_FaceRec): New member
-       `pshinter'.
-       * src/cid/cidgload.c (CID_Load_Glyph): Add hinter support.
-       * src/cid/cidobjs.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
-       (CID_GlyphSlot_Done, CID_GlyphSlot_Init, CID_Size_Get_Globals_Funcs,
-       CID_Size_Done, CID_Size_Init, CID_Size_Reset): New functions.
-       (CID_Done_Face): Renamed to ...
-       (CID_Face_Done): This.
-       (CID_Init_Face): Renamed to ...
-       (CID_Face_Init): This.
-       Add hinting support.
-       (CID_Init_Driver): Renamed to ...
-       (CID_Driver_Init): This.
-       (CID_Done_Driver): Renamed to ...
-       (CID_Driver_Done): This.
-       * src/cid/cidobjs.h: Updated.
-       * src/cidriver.c: Updated.
-
-       * src/pshinter/pshrec.c (t2_hint_stems): Fixed.
-
-       * src/base/ftobjs.c (FT_Done_Library): Fixed a stupid bug that
-       crashed the library on exit.
-
-       * src/type1/t1gload.c (T1_Load_Glyph): Enable font matrix
-       transformation of hinted glyphs.
-
-       * src/cid/cidload.c (cid_read_subrs): Fix error condition.
-
-       * src/cid/cidobjs.c (CID_Face_Done): Fixed a memory leak; the subrs
-       routines were never released when CID faces were destroyed.
-
-       * src/cff/cffload.h, src/cff/cffload.c, src/cff/cffgload.c: Updated
-       to move the definition of encoding tables back within `cffload.c'
-       instead of making them part of a shared header (causing problems in
-       `multi' builds).  This reverts change 2001-08-08.
-
-       * docs/CHANGES: Updated for 2.0.6 release.
-       * docs/TODO: Added `stem3 and counter hints support' to the TODO
-       list for the Postscript hinter.
-       * docs/BUGS: Closed the AUTOHINT-NO-SBITS bug.
-
-2001-12-19  David Turner  <david@freetype.org>
-
-       * include/freetype/cache/ftcache.h: Added comments to indicate that
-       some of the exported functions should only be used by applications
-       that need to implement custom cache types.
-
-       * src/truetype/ttgload.c (cur_to_org, org_to_cur): Fixed a nasty bug
-       that prevented composites from loading correctly, due to missing
-       parentheses around macro parameters.
-
-       * src/sfnt/sfobjs.c (SFNT_Load_Face): Make the `post' and `name'
-       tables optional to load PCL fonts properly.
-
-       * src/truetype/ttgload.c (TT_Load_Glyph), src/base/ftobjs.c
-       (FT_Load_Glyph), include/freetype/freetype.h (FT_LOAD_SBITS_ONLY):
-       `Fixed' the bug that prevented embedded bitmaps to be loaded when
-       the auto-hinter is used.  This actually is a hack but will be enough
-       until the internal re-design scheduled for FreeType 2.1.
-
-       * src/raster/ftrend1.c (ft_raster1_render): Fixed a nasty outline
-       shifting bug in the monochrome renderer.
-
-       * README: Updated version numbers to 2.0.6.
-
-2001-12-17  Werner Lemberg  <wl@gnu.org>
-
-       * src/truetype/ttgload.c (load_truetype_glyph): Fix test for invalid
-       glyph header.
-
-2001-12-15  Werner Lemberg  <wl@gnu.org>
-
-       * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Remove compiler warning.
-       * include/freetype/ftcache.h (FTC_Node_Unref): Removed.  It is
-       already in ftcmanag.h.
-       * src/cache/ftcsbits.c (ftc_sbit_node_load): Remove unused variable
-       `gfam'.
-       * src/cache/ftcmanag.c (ftc_family_table_alloc,
-       * ftc_family_table_free): Use FT_EXPORT_DEF.
-       * include/freetype/cache/ftcmanag.h: Updated.
-       * src/cache/ftccache.c (ftc_node_destroy): Use FT_EXPORT_DEF.
-       * src/cache/ftccmap.c (ftc_cmap_node_init): Remove unused variable
-       `cfam'.
-       Remove compiler warning.
-       (FTC_CMapCache_Lookup): Remove compiler warnings.
-       (ftc_cmap_family_init): Ditto.
-       (FTC_CMapCache_Lookup): Ditto.
-
-       * builds/unix/configure.ac: Increase `version_info' to 8:0:2.
-       * builds/unix/configure: Regenerated.
-
-2001-12-14  Werner Lemberg  <wl@gnu.org>
-
-       * builds/mac/README: Updated.
-
-2001-12-14  Scott Long  <scott@swiftview.com>
-
-       * src/truetype/ttgload.c (load_truetype_glyph): Fixing crash when
-       dealing with invalid fonts (i.e. glyph size < 10 bytes).
-
-2001-12-14  Sam Latinga  <slouken@devolution.com>
-
-       * builds/mac/freetype.make: A new Makefile to build with MPW on
-       MacOS classic.
-
-2001-12-14  David Turner  <david@freetype.org>
-
-       * src/truetype/ttgload.c (TT_Load_Glyph), src/type1/t1gload.c
-       (T1_Load_Glyph), src/cid/cidgload.c (CID_Load_Glyph),
-       src/cff/cffgload.c (CFF_Load_Glyph): Fixed a serious bug common to
-       all font drivers (the advance width was never hinted when it
-       should).
-
-       * include/freetype/freetype.h (FREETYPE_PATCH): New macro.
-       * src/base/ftdbgmem.c (debug_mem_dummy) [!FT_DEBUG_MEMORY]: Don't
-       use `extern' keyword.
-
-2001-12-12  David Turner  <david@freetype.org>
-
-       * src/pshinter/pshglob.c (psh_blues_scale_zones, psh_blues_snap_stem
-       psh_globals_new): Adding correct BlueScale/BlueShift support, plus
-       family blues processing.
-       * src/pshinter/pshglob.h (PSH_BluesRec): Updated.
-
-       Started adding support for the Postscript hinter in the CFF module.
-
-       * src/cff/cffgload.c: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
-       (CFF_Parse_CharStrings): Implement it.
-       * src/cff/cffgload.h: Updated.
-
-2001-12-12  Werner Lemberg  <wl@gnu.org>
-
-       * builds/unix/freetype2.m4: Some portability fixes.
-
-2001-12-11  Jouk Jansen  <joukj@hrem.stm.tudelft.nl>
-
-       * src/base/descrip.mms (OBJS): Add ftdebug.obj.
-
-2001-12-11  Werner Lemberg  <wl@gnu.org>
-
-       * src/sfnt/ttload.c (TT_Load_Generic_Header): Typos.
-
-2001-12-11  David Turner  <david@freetype.org>
-
-       * builds/unix/freetype-config.in: Modified the script to prevent
-       passing `-L/usr/lib' to gcc.
-
-       * docs/FTL.TXT: Simple fix (change `LICENSE.TXT' to `FTL.TXT').
-
-       * builds/unix/freetype2.m4: New file for checking configure paths.
-       We need to install it in $(prefix)/share/aclocal/freetype2.m4 but I
-       didn't modify builds/unix/install.mk yet.
-
-       * INSTALL: Updated the instructions to build shared libraries with
-       Jam.  They were simply wrong.
-
-       * src/base/fttrigon.c (FT_Cos): Fixed a small bug that caused
-       slightly improper results for `FT_Cos' and `FT_Sin' (example:
-       FT_Sin(0) == -1!).
-
-2001-12-11  Detlef Würkner  <TetiSoft@apg.lahn.de>
-
-       * include/freetype/internal/ftstream.h (GET_LongLE, GET_ULongLE):
-       Fixed incorrect argument types.
-
-2001-12-10  Francesco Zappa Nardelli  <Francesco.Zappa.Nardelli@ens.fr>
-
-       * src/pcf/pcfdriver.c (PCF_Init_Face): Allow Xft to use PCF fonts
-       by setting the `face->metrics.max_advance' correctly.
-
-2001-12-07  David Turner  <david@freetype.org>
-
-       * include/freetype/cache/ftccmap.h, src/cache/ftccmap.c: Added new
-       charmap cache.
-       * src/cache/ftcache.c: Updated.
-
-       * src/autohint/ahhint.c (ah_hinter_hint_edges): s/UNUSED/FT_UNUSED/.
-
-2001-12-06  Leonard Rosenthol  <leonardr@lazerware.com>
-
-       Added support for reading .dfont files on Mac OS X.  Also added a
-       new routine which looks up a given font by name in the Mac OS and
-       returns the disk file where it resides.
-
-       * src/base/ftmac.c: Include <Files.h> and <TextUtils.h>.
-       (is_dfont): New auxiliary function.
-       (FT_New_Face_From_dfont): New function.
-       (FT_GetFile_From_Mac_Name): New exported function.
-       (FT_New_Face): Updated.
-       * include/freetype/ftmac.h: Updated.
-
-2001-12-06  David Turner  <david@freetype.org>
-
-       * src/cache/Jamfile, src/cache/rules.mk: Updated.
-
-2001-12-06  Werner Lemberg  <wl@gnu.org>
-
-       * INSTALL: Small update.
-
-2001-12-05  David Turner  <david@freetype.org>
-
-       * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Re-ordered code for
-       debugging purposes.
-       Comment out use of `origin'.
-
-       * src/smooth/ftsmooth.c (ft_smooth_render): Fixed a nasty hidden bug
-       where outline shifting wasn't correctly undone after bitmap
-       rasterization.  This created problems with certain glyphs (like '"'
-       of certain fonts) and the cache system.
-
-       * src/pshinter/pshalgo1.c (psh1_hint_table_init): Fix typo.
-       * src/pshinter/pshalgo2.c (psh2_hint_table_init): Fix typo.
-       (ps2_hints_apply): Small fix.
-
-2001-12-05  David Turner  <david@freetype.org>
-
-       * src/pshinter/pshalgo2.c (psh2_hint_table_init),
-       src/pshinter/pshalgo1.c (psh1_hint_table_init): Removed compiler
-       warnings.
-
-       * include/freetype/ftcache.h, include/freetype/cache/*, src/cache/*:
-       Yet another massive rewrite of the caching sub-system in order to
-       both increase performance and allow simpler cache sub-classing.  As
-       an example, the code for the image and sbit caches is now much
-       simpler.
-
-       I still need to update the documentation in
-       www/freetype2/docs/cache.html to reflect the new design though.
-
-       * include/freetype/config/ftheader.h (FT_CACHE_CHARMAP_H): New
-       macro.
-       (FT_CACHE_INTERNAL_CACHE_H): Updated.
-
-2001-12-05  David Krause  <freetype@davidkrause.com>
-
-       * docs/license.txt: s/X Windows/X Window System/.
-
-2001-12-04  Werner Lemberg  <wl@gnu.org>
-
-       * src/raster/ftraster.c: Fix definition condition of MEM_Set().
-       * src/smooth/ftgrays.c (M_Y): Change value to 192.
-       * src/base/ftdbgmem.c (ft_mem_table_destroy): Fix printf() parameter.
-       Remove unused variable.
-       * src/cache/ftcimage.c (ftc_image_node_init,
-       ftc_image_node_compare): Remove unused variables.
-       * src/cache/ftcsbits.c (ftc_sbit_node_weight): Remove unused
-       variable.
-       * src/raster/ftraster.c (MEM_Set): Move definition down to avoid
-       compiler warning.
-       * src/autohint/ahhint.c (ah_hinter_hint_edges): Use UNUSED() to
-       avoid compiler warnings.
-       * src/pcf/pcfread.c (tableNames): Use `const'.
-       (pcf_read_TOC): Change counter name to avoid compiler warning.
-       Use `const'.
-       * src/pshinter/pshrec.c (ps_hints_close): Remove redundant
-       declaration.
-       * src/pshinter/pshalgo1.c (psh1_hint_table_init): Rename variables
-       to avoid shadowing.
-       * src/pshinter/pshalgo2.c (psh2_hint_table_activate_mask): Ditto.
-       * src/type1/t1objs.h: Remove double declarations of `T1_Size_Init()'
-       and `T1_Size_Done()'.
-
-2001-11-20  Antoine Leca  <antoineleca@multimania.com>
-
-       * include/freetype/ttnameid.h: Added some new Microsoft language
-       codes and LCIDs as found in MSDN (Passport SDK).  Also added
-       comments about the meaning of bit 57 of the `OS/2' table
-       (TT_UCR_SURROGATES) which (with OpenType v.1.3) now means `there is
-       a character beyond 0xFFFF in this font'.  Thanks to Detlef Würkner
-       <TetiSoft@apg.lahn.de> for noticing this.
-
-2001-11-20  David Turner  <david@freetype.org>
-
-       * src/pshinter/{pshalgo2.c, pshalgo1.c}: Fixed stupid bug in sorting
-       routine that created nasty alignment artefacts.
-
-       * src/pshinter/pshrec.c, tests/gview.c: Debugging updates.
-
-       * src/smooth/ftgrays.c: De-activated experimental gamma support.
-       Apparently, `optimal' gamma tables depend on the monitor type,
-       resolution and general karma, so it's better to compute them outside
-       of the rasterizer itself.
-       (gray_convert_glyph): Use `volatile' keyword.
-
-2001-10-29  David Turner  <david@freetype.org>
-
-       Adding experimental `gamma' support.  This produces smoother glyphs
-       at small sizes for very little cost.
-
-       * src/smooth/ftgrays.c (grays_init_gamma): New function.
-       (gray_raster_new): Use it.
-
-       Various fixes to the auto-hinter.  They merely improve the output of
-       sans-serif fonts.  Note that there are still problems with serifed
-       fonts and composites (accented characters).
-
-       * src/autohint/ahglyph.c (ah_outline_load,
-       ah_outline_link_segments): Implement it.
-       Fix typos.
-       (ah_outline_save, ah_outline_compute_segments): Fix typos.
-       * src/autohint/ahhint.c (ah_align_serif_edge): New argument
-       `vertical'.  Implement improvement.
-       (ah_hint_edges_3, ah_hinter_hint_edges): Implement it.
-       Fix typos.
-       (ah_hinter_align_strong_points, ah_hinter_align_weak_points): Fix
-       typos.
-       (ah_hinter_load): Set `ah_debug_hinter' if DEBUG_HINTER is defined.
-       * src/autohint/ahmodule.c: Implement support for DEBUG_HINTER macro.
-       * src/autohint/ahtypes.h: Ditto.
-       (AH_Hinter): Remove `disable_horz_edges' and `disable_vert_edges'
-       (making them global as `ah_debug_disable_horz' and
-       `ah_debug_disable_vert').
-       Fix typos.
-
-       * tests/gview.c: Updated the debugging glyph viewer to show the
-       hints generated by the `autohint' module.
-
-2001-10-27  David Turner  <david@freetype.org>
-
-       * src/cache/ftcchunk.c (ftc_chunk_cache_lookup): Fixed a bug that
-       considerably lowered the performance of the abstract chunk cache.
-
-2001-10-26  David Turner  <david@freetype.org>
-
-       * include/freetype/ftcache.h, include/freetype/cache/*.h,
-       src/cache/*.c: Major re-design of the cache sub-system to provide
-       better performance as well as an `Acquire'/`Release' API.  Seems to
-       work well here, but probably needs a bit more testing.
-
-2001-10-26  Leonard Rosenthol  <leonardr@lazerware.com>
-
-       * builds/mac/README: Updated to reflect my taking over the project
-       and that is now being actively maintained.
-
-       * src/base/ftmac.c (parse_fond): Applied patches from Paul Miller
-       <paulm@profoundeffects.com> to support loading a face other than the
-       first from a FOND resource.
-       (FT_New_Face_From_FOND): Updated.
-
-2001-10-25  Leonard Rosenthol  <leonardr@lazerware.com>
-
-       * builds/mac/ftlib.prj: Update of CodeWarrior project file for Mac
-       OS for latest version (7) of CWPro and for recent changes to the FT
-       source tree.
-
-2001-10-25  David Turner  <david@freetype.org>
-
-       * include/freetype/config/ftoption.h: Updated comments to explain
-       precisely how to use project-specific macro definitions without
-       modifying this file manually.
-
-       (FT_CONFIG_FORCE_INT64): Define.
-
-       (FT_DEBUG_MEMORY): New macro.
-
-2001-10-24  Tom Kacvinsky  <tkacvins@freetype.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 occurred through REALLOC
-       couldn't be previously caught correctly.
-
-       * src/autohint/ahglyph.c (ah_outline_compute_segments,
-       ah_outline_compute_edges), src/raster/ftraster.c (ft_black_new),
-       src/smooth/ftgrays.c (gray_render_span, gray_raster_new): Replaced
-       liberal uses of memset() by the MEM_Set() macro.
-
-2001-10-23  David Turner  <david@freetype.org>
-
-       * src/raster/ftraster.c (Update): Removed to be inlined in ...
-       (Sort): Updated.
-
-2001-10-22  David Turner  <david@freetype.org>
-
-       * builds/unix/ftsystem.c (FT_New_Memory, FT_Done_Memory),
-       builds/vms/ftsystem.c (FT_New_Memory, FT_Done_Memory),
-       builds/amiga/ftsystem.c (FT_New_Memory, FT_Done_Memory),
-       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.
-
-       * 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.
-
-       * src/base/Jamfile: Include ftdbgmem.
-       * src/base/rules.mk: Ditto.
-       * src/base/ftbase.c: Include ftdbgmem.c.
-
-       * 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  <tkacvins@freetype.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  <tkacvins@freetype.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  <tkacvins@freetype.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 subroutines are not loaded twice.  This is to remove a memory
-       leak that occurred 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 serious bug that made FreeType return
-       incorrect glyph names for certain glyphs.
-
-       * src/truetype/ttdriver.c (Set_Char_Sizes): Changing computation of
-       pixel size from character size to use rounding.  This is an
-       experiment to see whether 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.
-       (destroy_face): Don't deallocate unconditionally.
-
-       * src/cid/cidgload.c (CID_Compute_Max_Advance, CID_Load_Glyph):
-       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/type1/t1driver.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).
-
-       * src/cid/cidriver (cid_get_postscript_name): New function.
-       (CID_Get_Interface): Handle `postscript_name' interface.
-
-       * src/sfnt/sfdriver.c (get_sfnt_postscript_name): New function.
-       (SFNT_Get_Interface): Handle `postscript_name' interface.
-
-       * src/type1/t1driver.c (t1_get_ps_name): New function.
-       (Get_Interface): Handle `postscript_name' interface.
-
-       * 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ürkner  <TetiSoft@apg.lahn.de>
-
-       * builds/amiga/*: Added port to Amiga with the SAS/C compiler.
-
-2001-09-15  Detlef Würkner  <TetiSoft@apg.lahn.de>
-
-       * src/type1/t1afm.c (T1_Done_AFM): Free `afm'.
-
-2001-09-10  Yao Zhang  <yzhang@sharemedia.com>
-
-       * src/sfnt/ttcmap.c (code_to_index2): Handle code values with
-       hi-byte == 0 correctly.
-
-2001-09-10  Werner Lemberg  <wl@gnu.org>
-
-       * builds/link-std.mk ($(PROJECT_LIBRARY)): Fix typo.
-
-2001-08-30  Martin Muskens  <mmuskens@aurelon.com>
-
-       * src/type1/t1load.c (parse_font_matrix): A new way to compute the
-       units per EM with greater accuracy (important for embedded T1 fonts
-       in PDF documents that were automatically generated from TrueType
-       ones).
-
-       * src/type1/t1load.c (is_alpha): Now supports `+' in font names;
-       this is used in embedded fonts.
-
-       * src/psaux/psobjs.c (PS_Table_Add): Fixed a reallocation bug that
-       generated a dangling pointer reference.
-
-2001-08-30  Anthony Feik  <afeick@hotmail.com>
-
-       * src/type1/t1afm.c (T1_Read_Afm): Now correctly sets the flag
-       FT_FACE_FLAG_KERNING when appropriate for Type1 + AFM files.
-
-2001-08-25  Werner Lemberg  <wl@gnu.org>
-
-       * src/sfnt/ttload.c (TT_Load_CMap): Fix frame length of
-       `cmap_rec_fields'.
-
-       * include/freetype/fterrors.h [!FT_CONFIG_OPTION_USE_MODULE_ERRORS]:
-       Undefine FT_ERR_BASE before defining again.
-
-2001-08-22  Werner Lemberg  <wl@gnu.org>
-
-       * src/truetype/ttinterp.h: Fix prototype of TT_Move_Func.
-
-2001-08-21  Werner Lemberg  <wl@gnu.org>
-
-       * builds/dos/dos-def.mk (NO_OUTPUT): Don't use `&>' but `>'.
-
-2001-08-21  David Turner  <david@freetype.org>
-
-       * include/freetype/config/ftoption.h: Changed the default setting
-       for FT_CONFIG_OPTION_USE_MODULE_ERRORS to undefined, since it breaks
-       source compatibility in a few cases.  Updated the comment to explain
-       that too.
-
-2001-08-17  Martin Muskens  <mmuskens@aurelon.com>
-
-       * src/base/ftcalc.c (FT_MulDiv): Fixed serious typo.
-
-2001-08-12  Werner Lemberg  <wl@gnu.org>
-
-       Updating to OpenType 1.3.
-
-       * include/freetype/internal/tttypes.h (TT_CMap0, TT_CMap2, TT_CMap4,
-       TT_CMap6): Adding field `language'.
-       (TT_CMapTable): Removing field `language'.
-       Type of `length' field changed to FT_ULong.
-       Adding fields for cmaps format 8, 10, and 12.
-       (TT_CMapGroup): New auxiliary structure.
-       (TT_CMap8_12, TT_CMap10): New structures.
-       * include/freetype/tttables.h (TT_HoriHeader, TT_VertHeader):
-       Removed last element of `Reserved' array.
-       * include/freetype/ttnameid.h (TT_PLATFORM_CUSTOM, TT_MS_ID_UCS_4,
-       TT_NAME_ID_CID_FINDFONT_NAME): New macros.
-
-       * src/sfnt/ttcmap.c (TT_CharMap_Load): Updated loading of `language'
-       field to the new structures.
-       Fixed freeing of arrays in case of unsuccessful loads.
-       Added support for loading format 8, 10, and 12 cmaps.
-       (TT_CharMap_Free): Added support for freeing format 8, 10, and 12
-       cmaps.
-       (code_to_index4): Small improvement.
-       (code_to_index6): Ditto.
-       (code_to_index8_12, code_to_index10): New functions.
-       * src/sfnt/ttload.c (TT_Load_Metrics_Header): Updated to new
-       structure.
-       (TT_Load_CMap): Ditto.
-
-       * src/sfnt/sfobjs.c (tt_encodings): Add MS UCS4 table (before MS
-       Unicode).
-
-2001-08-11  Werner Lemberg  <wl@gnu.org>
-
-       * src/type1/t1driver.c (t1_get_name_index): Fix compiler warning.
-
-2001-08-09  Tom Kacvinsky  <tkacvins@freetype.org>
-
-       * src/cff/cffdrivr.c (get_cff_glyph_name): Renamed to
-       cff_get_glyph_name for consistency.
-
-       (cff_get_glyph_index): Minor documentation change.
-
-       * src/type1/t1driver.c (t1_get_name_index): New function used in
-       Get_Interface as the function returned when the `name_index'
-       function is requested.
-
-       (get_t1_glyph_name): Renamed to t1_get_glyph_name for consistency.
-
-2001-08-08  Tom Kacvinsky  <tkacvins@freetype.org>
-
-       * src/cff/cffload.c: Removed definitions of cff_isoadobe_charset,
-       cff_expert_charset, cff_expertsubset_charset, cff_standard_encoding,
-       and cff_expert_encoding arrays to cffload.h.
-
-       * src/cff/cffload.h: Added definitions of cff_isoadobe_charset,
-       cff_expert_charset, cff_expertsubset_charset, cff_standard_encoding,
-       and cff_expert_encoding arrays.
-
-       * src/cff/cffdrivr.c (cff_get_name_index): New function, returned
-       when `cff_get_interface' is called with a request for the
-       `name_index' function.
-
-       (cff_get_interface): Modified so that it returns the function
-       `cff_get_name_index' when the `name_index' function is requested.
-
-       * src/base/ftobjs.c (FT_Get_Name_Index): New function, used to
-       return a glyph index for a given glyph name only if the driver
-       supports glyph names.
-
-       * include/freetype/internal/ftobjs.h (FT_Name_Index_Requester):
-       New function pointer type definition used in the function
-       FT_Get_Name_Index.
-
-       * include/freetype/freetype.h (FT_Get_Name_Index): Added
-       documentation and prototype.
-
-2001-07-26  Werner Lemberg  <wl@gnu.org>
-
-       * builds/cygwin/*: Removed.  Use the unix stuff instead.
-
-2001-07-26  Jouk Jansen  <joukj@hrem.stm.tudelft.nl>
-
-       * builds/vms/ftconfig.h (FT_CALLBACK_DEF): Updated to change dated
-       2001-06-27.
-
-2001-07-17  Werner Lemberg  <wl@gnu.org>
-
-       * include/freetype/internal/psaux.h (PS_Table): Use FT_Offset for
-       `cursor' and `capacity'.
-       * src/psaux/psobjc.c (reallocate_t1_table): Use FT_Long for second
-       parameter.
-       (PS_Table_Add): Use FT_Offset for `new_size'.
-
-       Add support for version 0.5 maxp tables.
-
-       * src/sfnt/ttload.c (TT_Load_MaxProfile): Implement it.
-       (TT_Load_OS2): Initialize some values.
-
-2001-07-13  Werner Lemberg  <wl@gnu.org>
-
-       * src/base/ftsynth.c: Include ftcalc.h unconditionally.
-
-2001-07-07  David Turner  <david@freetype.org>
-
-       * src/truetype/ttgload.c, src/truetype/ttinterp.c, src/pcf/pcfread:
-       Removed pedantic compiler warnings when the bytecode interpreter is
-       compiled in.
-
-2001-07-03  Werner Lemberg  <wl@gnu.org>
-
-       * src/autohint/ahhint.c (ah_hinter_align_weak_points): Remove
-       unused variable `edges'.
-       (ah_hinter_load): Remove unused variables `old_width' and
-       `new_width'.
-       * src/cid/cidload.c (cid_decrypt): Use `U' for constant (again).
-       * src/psaux/psobjs.c (T1_Decrypt): Ditto.
-       * src/type1/t1parse.c (T1_Get_Private_Dict): Ditto.
-
-2001-06-28  David Turner  <david@freetype.org>
-
-       * include/internal/ftstream.h: Modified the definitions
-       of the FT_GET_XXXX and NEXT_XXXX macros for 16-bit correctness.
-
-2001-06-26  Werner Lemberg  <wl@gnu.org>
-
-       * src/cid/cidload.c, src/cid/cidload.h (cid_decrypt): Use FT_Offset
-       instead of FT_Int as type for `length' parameter.
-       * include/freetype/internal/psaux.h (PSAux_Interface): Updated.
-
-2001-06-27  Wolfgang Domröse  <porthos.domroese@harz.de>
-
-       * src/psaux/psobjs.c, src/psaux/psobjs.h (T1_Decrypt): Use FT_Offset
-       instead of FT_Int as type for `length' parameter.
-
-
-       * Version 2.0.4 released.
-       =========================
-
-
-2001-06-27  David Turner  <david@freetype.org>
-
-       * builds/unix/ftconfig.in: Changed the definition of the
-       FT_CALLBACK_DEF macro.
-
-       * include/freetype/ftconfig.h, src/*/*.c: Changed the definition and
-       use of the FT_CALLBACK_DEF macro in order to support 16-bit
-       compilers.
-
-       * builds/unix/ftconfig.in: Changed the definition of the
-       FT_CALLBACK_DEF macro.
-
-       * src/sfnt/ttload.c (TT_Load_Kern): The kern table loader now ensures
-       that the kerning table is correctly sorted (some problem fonts don't
-       have a correct kern table).
-
-2001-06-26  Wolfgang Domröse  <porthos.domroese@harz.de>
-
-       * include/freetype/internal/ftstream.h (FT_GET_OFF3_LE): Fix typo.
-
-2001-06-24  David Turner  <david@freetype.org>
-
-       * src/base/ftcalc.c (ft_div64by32): Fixed the source to work
-       correctly on 16-bit systems.
-
-2001-06-23  Anthony Fok  <fok@debian.org>
-
-       * debian/*: Added Debian package build directory for 2.0.4.
-
-2001-06-22  David Turner  <david@freetype.org>
-
-       * docs/PATENTS: Added patents disclaimer.  This one was missing!
-
-       * docs/CHANGES, docs/todo: Updated for the upcoming 2.0.4 release.
-
-2001-06-20  Werner Lemberg  <wl@gnu.org>
-
-       * include/freetype/config/ftconfig.h: Add two more `L's to
-       constants.
-       Add missing semicolons.
-
-       * builds/toplevel.mk: Do similar change as for
-       builds/unix/detect.mk.
-
-       * include/freetype/freetype.h (FT_ENC_TAG): New version to make it
-       easier to redefine.
-       * include/freetype/ftimage.h (FT_IMAGE_TAG): Ditto.
-
-       * src/pcf/pcfread.c (pcf_get_encodings): Add cast.
-
-2001-06-19  David Turner  <david@freetype.org>
-
-       * builds/win32/visualc/freetype.dsp, builds/win32/visualc/index.html:
-       Updated the Visual C++ project (for the 2.0.4 release).
-
-       * builds/unix/detect.mk: Added rule for AIX detection (which uses
-       /usr/sbin/init instead of /sbin/init).
-
-       * include/freetype/fterrors.h, src/*/*err*.h: Updated some of the
-       error macros to simplify handling of new error scheme.
-
-2001-06-19  Werner Lemberg  <wl@gnu.org>
-
-       * include/freetype/fttypes.h (FT_ERROR_MODULE): New macro.
-
-2001-06-19  David Turner  <david@freetype.org>
-
-       Removing _lots_ of compiler warnings when the most pedantic warning
-       levels of Visual C++ and Borland C++ are used.  Too many files to be
-       listed here, but FT2 now compiles without warnings with VC++ and the
-       `/W4' warning level (lint-style).
-
-       * include/freetype/freetype.h (FT_New_Memory_Face): Updated
-       documentation.
-       * include/freetype/fttypes.h (FT_BOOL): New macro.
-       * include/freetype/internal/ftdebug.h: Add #pragma for Visual C++
-       to suppress warning.
-       * include/freetype/internal/ftstream.h (FT_GET_SHORT_{BE,LE},
-       FT_GET_OFF3_{BE,LE}, FT_GET_LONG_{BE,LE}): New macros.
-       (NEXT_*): Use them.
-       * src/autohint/ahglobal.c: Include FT_INTERNAL_DEBUG_H.
-       (FT_New_Memory_Face): Add `const' to function declaration.
-
-2001-06-18  Werner Lemberg  <wl@gnu.org>
-
-       Minor cleanups to remove compiler warnings.
-
-       * include/freetype/cache/ftcmanag.h (FTC_MAX_BYTES_DEFAULT): Use
-       `L' for constant.
-       * include/freetype/config/ftoption.h (FT_RENDER_POOL_SIZE): Ditto.
-       * src/base/ftcalc.c (FT_MulDiv): Use `L' for constant.
-       * src/base/ftglyph.c (FT_Glyph_Get_CBox): Remove `error' variable.
-       * src/base/fttrigon.c (ft_trig_arctan_table): Use `L' for constants.
-       * src/base/ftobjs.c (FT_Done_Size): Fix return value.
-       (FT_Set_Char_Size, FT_Set_Pixel_Sizes, FT_Get_Kerning): Remove
-       unused `memory' variable.
-       * src/autohint/ahglyph.c (ah_get_orientation): Use `L' for constant.
-       * src/autohint/ahhint.c (ah_hint_edges_3,
-       ah_hinter_align_edge_points): Remove unused `before' and `after'
-       variables.
-       (ah_hinter_align_weak_points): Remove unused `edge_limit' variable.
-       (ah_hinter_load): Remove unused `new_advance', `start_contour',
-       and `metrics' variables.
-       * src/cff/cffload.c (CFF_Load_Encoding): Remove dead code to avoid
-       compiler warning.
-       * src/cff/cffobjs.c (CFF_Init_Face): Remove unused `base_offset'
-       variable.
-       * src/cff/cffgload.c (CFF_Parse_CharStrings): Remove unused
-       `outline' variable.
-       (cff_compute_bias): Use `U' for constant.
-       * src/cid/cidload.c (cid_decrypt): Ditto.
-       * src/psaux/psobjs.c (T1_Decrypt): Ditto.
-       * src/psaux/t1decode.c (T1_Decoder_Parse_CharStrings): Ditto.
-       * src/sfnt/ttload.c (TT_Load_Kern): Remove unused `version'
-       variable.
-       * src/sfnt/ttsbit.c (TT_Load_SBit_Image): Remove unused `top'
-       variable.
-       * src/truetype/ttgload.c (load_truetype_glyph): Remove unused
-       `num_contours' and `ins_offset' variables.
-       (compute_glyph_metrics): Remove unused `Top' and `x_scale'
-       variables.
-       (TT_Load_Glyph): Remove unused `memory' variable.
-       * src/smooth/ftgrays.c (grays_raster_render): Use `L' for constants.
-
-2001-06-18  Werner Lemberg  <wl@gnu.org>
-
-       Make the new error scheme source compatible with older FT versions
-       by introducing another layer.
-
-       * include/freetype/fterrors.h (FT_ERRORDEF_, FT_NOERRORDEF_): New
-       macros.
-       (FT_NOERRORDEF): Removed.
-       * include/*/*err*.h: Use FT_ERRORDEF_ and FT_NOERRORDEF_.
-