[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ft-devel] Fw: [ft-cvs] freetype2 ./ChangeLog builds/amiga/src/base/fts.

From: Werner LEMBERG
Subject: [ft-devel] Fw: [ft-cvs] freetype2 ./ChangeLog builds/amiga/src/base/fts...
Date: Sun, 19 Feb 2006 17:26:02 +0100 (CET)

Erroneously sent to freetype-cvs.

--- Begin Message --- Subject: Re: [ft-cvs] freetype2 ./ChangeLog builds/amiga/src/base/fts... Date: Fri, 17 Feb 2006 19:24:31 +0800 User-agent: Mutt/1.5.11

On Thu, Feb 16, 2006 at 10:45:32PM +0000, David Turner wrote:
>       massive changes to the internals to respect the internal object layouts
>       and exported functions of FreeType 2.1.7. Note that the cache sub-system
>       cannot be fully retrofitted, unfortunately.
In freetype <= 2.1.10 with FT_OPTIMIZE_MEMORY not defined, we assume
that `face->horizontal.long_metrics' is an array of size
`face->horizontal.number_Of_HMetrics'.  libXfont (a rogue client) has
the same assumption.

When FT_OPTIMIZE_MEMORY is defined, `long_metrics' is always NULL while
`number_Of_HMetrics' is usually non-zero.  This crashes libXfont and
thus xorg.

The only fix I come up with is always set
face->horizontal.number_Of_HMetrics to zero, add `number_Of_HMetrics' to
the end of `TT_FaceRec' and use it when FT_OPTIMIZE_MEMORY is defined.
`vhea' should be handled similarly.

libXfont is available here: (see the `vl' option, it
is enabled by default for multi-byte non-charcell fonts)


Freetype-cvs mailing list

--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]