[NTG-pdftex] pdftex-1.40.0-alpha-20051221

Hartmut Henkel hartmut_henkel at gmx.de
Tue Dec 27 15:40:37 CET 2005

```On Wed, 21 Dec 2005 w.m.l at gmx.net wrote:

> On 21.12.2005 00:33, Martin Schröder wrote:
> > - has a large patch from Thanh
>
> Very nice to see this included!
> Here is my bug collection for the new extensions:
>
> %-----------------------------------------------------
> % 1) "This can't happen (flushing)" with
> %     kerning+expansion+ligatures:
> %-----------------------------------------------------
> \pdffontexpand\font 20 20 4 autoexpand
> \pdfappendkern=1
> \knaccode\font`i=100
>
> \hsize10em
> foo fii foo foo foo foo
> %% but this works:
> %foo f{}ii foo foo foo foo
> \bye

FWIW, this happens in function do_subst_font(). But it starts with
auto_expand_kern(), where the given kern indeed is appended to the i of
"fi" and also to the 2nd "i". It seems as if at this time "fi" is not
yet seen as a ligature. Then in do_subst_font() the "fi" is somehow
already a ligature, and now the kern is part of the lig_ptr list (which
is wrong). Then font(r) is recursively changed to 51, the expanded font
number, and so the kern, which should not be in this list, gets the 51
as its type. But it must be 11 for a kern. Maybe a change should be that
the kern does not end up in the lig_ptr list, but should come after the
"fi" ligature. No idea, how.

Regards, Hartmut

```