harfbuzz/src
Behdad Esfahbod c561d69c72 Remove ClassDef->Defined field. This is the comment accompanying it:
2009-01-29  Behdad Esfahbod  <behdad@gnome.org>

        * pango/opentype/harfbuzz-open.h:
        * pango/opentype/harfbuzz-gdef.c (Make_ClassRange),
        (HB_GDEF_Build_ClassDefinition):
        * pango/opentype/harfbuzz-gpos.c (Load_PosClassRule),
        (Load_ChainPosClassRule):
        * pango/opentype/harfbuzz-gsub.c (Load_SubClassRule),
        (Load_ChainSubClassRule):
        * pango/opentype/harfbuzz-open.c (Load_ClassDef1),
        (Load_ClassDef2), (_HB_OPEN_Load_ClassDefinition),
        (_HB_OPEN_Load_EmptyClassDefinition),
        (_HB_OPEN_Free_ClassDefinition):
        Remove ClassDef->Defined field.  This is the comment accompanying it:

          The `Defined' field is not defined in the OpenType specification
          but apparently needed for processing fonts like trado.ttf: This
          font refers to a class which contains not a single element.  We
          map such classes to class 0.

        The comment is correct that trado.ttf (MS Traditional Arabic) uses
        such classes.  However, in my testing I couldn't identify any
        problems with the font if the special handling is removed.  I also
        processed as many fonts as I could get my hand on and trado.ttf was
        the only not-totally-broken font hitting the special-case code.
        DejaVu fonts hit it too, but I'm sure they do not require the
        special-handling code.  Most probably, that code introduces bugs
        in them.

        The special-casing was consuming lots of memory.  EIGHT MEGABYTES
        for loading DejaVu Sans!  While this could be complete fixed, I
        decided to remove the special-handling code altogether.  I don't
        think it will make any real difference, and if it does, we'll fix
        fonts.  Such hacks will not be in harfbuzz-ng anyway.

        Bug originally reported by nsf.
2009-01-29 09:20:08 +00:00
..
COPYING HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-buffer-private.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-buffer.c HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-buffer.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-dump-main.c Remove old cruft. 2009-01-29 09:19:43 +00:00
harfbuzz-dump.c Bug 469049 – Fix all compiler warnings 2008-12-26 02:31:47 +00:00
harfbuzz-dump.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-gdef-private.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-gdef.c Remove ClassDef->Defined field. This is the comment accompanying it: 2009-01-29 09:20:08 +00:00
harfbuzz-gdef.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-global.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-gpos-private.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-gpos.c Remove ClassDef->Defined field. This is the comment accompanying it: 2009-01-29 09:20:08 +00:00
harfbuzz-gpos.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-gsub-private.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-gsub.c Remove ClassDef->Defined field. This is the comment accompanying it: 2009-01-29 09:20:08 +00:00
harfbuzz-gsub.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-impl.c Use calloc(), instead of malloc()ing and memset()ing. 2009-01-29 09:19:56 +00:00
harfbuzz-impl.h Remove unused macro 2008-01-24 04:42:24 +00:00
harfbuzz-open-private.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-open.c Remove ClassDef->Defined field. This is the comment accompanying it: 2009-01-29 09:20:08 +00:00
harfbuzz-open.h Remove ClassDef->Defined field. This is the comment accompanying it: 2009-01-29 09:20:08 +00:00
harfbuzz-stream-private.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz-stream.c HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz.c HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
harfbuzz.h HarfBuzz was relicensed to a more generous and simpler license. Adapt. See 2008-01-15 22:46:32 +00:00
Makefile.am Remove COPYING.GPL and COPYING.FTL that are no longer there. 2008-01-16 20:39:29 +00:00
makefile.msc updated 2007-01-13 21:31:41 +00:00
README Convert pango/opentype to the new project called HarfBuzz. 2006-03-31 12:28:09 +00:00

This is HarfBuzz, an OpenType Layout engine.

It was derived originally from the OpenType code in FreeType-1.x, ported to
FreeType2.  (This code has been abandoned for FreeType2, but until something
better comes along, should serve our purposes.) In addition to porting to
FreeType-2, it has been modified in various other ways.

It also includes a partial XML dumper for OpenType Layout tables useful for
figuring out what is going on. Please extend to cover additional parts of the
tables as you encounter fonts using them.  The dumper is written by Owen Taylor.

Bug reports on these files should be sent to the HarfBuzz mailing list as
listed on http://freedesktop.org/wiki/Software/harfbuzz

For license information, see the file COPYING. 

Behdad Esfahbod
April 1st, 2006