On 8/14/2021 5:56 PM, Marcel Krüger via ntg-context wrote:
Hi,
the latest ConTeXt version fails for the following document:
\definefontfeature [default:test] [default] [axis={Weight=100}] \definefont [SomeFont] [file:Fraunces.ttf*default:test] \starttext \SomeFont Abcdef \stoptext
and the font from https://github.com/undercasetype/Fraunces/raw/master/fonts/Fraunces%5BSOFT%2... renamed to Fraunces.ttf
with the error message
otf reader > user instance: weight=100, factors: 0 -1.0 0 0 otf reader > fatal error in file 'Fraunces.ttf': ...e0dde776fb1556f32e/formats/luametatex/font-ttf-macro.lua:274: attempt to index a nil value (local 'p1') stack traceback: ...e0dde776fb1556f32e/formats/luametatex/font-otr-macro.lua:2339: in metamethod 'index' ...e0dde776fb1556f32e/formats/luametatex/font-ttf-macro.lua:274: in upvalue 'applyaxis' ...e0dde776fb1556f32e/formats/luametatex/font-ttf-macro.lua:1428: in field 'gvar' ...e0dde776fb1556f32e/formats/luametatex/font-ttf-macro.lua:1155: in local 'reader' ...e0dde776fb1556f32e/formats/luametatex/font-otr-macro.lua:2084: in upvalue 'readtable' ...e0dde776fb1556f32e/formats/luametatex/font-otr-macro.lua:2197: in upvalue 'readdata' ...e0dde776fb1556f32e/formats/luametatex/font-otr-macro.lua:2252: in function <...e0dde776fb1556f32e/formats/luametatex/font-otr-macro.lua:2235> [C]: in function 'xpcall' ...e0dde776fb1556f32e/formats/luametatex/font-otr-macro.lua:2341: in upvalue 'loadfont' ...e0dde776fb1556f32e/formats/luametatex/font-otr-macro.lua:2396: in field 'loadfont' ...mtx/tex/texmf-context/tex/context/base/mkiv/font-otl.lua:160: in field 'load' ...mtx/tex/texmf-context/tex/context/base/mkiv/font-otl.lua:599: in upvalue 'otftotfm' ...mtx/tex/texmf-context/tex/context/base/mkiv/font-otl.lua:627: in function <...mtx/tex/texmf-context/tex/context/base/mkiv/font-otl.lua:626> (...tail calls...) ...mtx/tex/texmf-context/tex/context/base/mkxl/font-def.lmt:377: in function <...mtx/tex/texmf-context/tex/context/base/mkxl/font-def.lmt:365> (...tail calls...) ...mtx/tex/texmf-context/tex/context/base/mkxl/font-def.lmt:483: in field 'read' ...mtx/tex/texmf-context/tex/context/base/mkxl/font-ctx.lmt:1336: in function <...mtx/tex/texmf-context/tex/context/base/mkxl/font-ctx.lmt:1193> (...tail calls...) fonts > otf loading > loading failed due to read error
(This run used luametatex, but the same issue occurs when using luatex) The same font worked correctly with the ConTeXt version from 2021-05-20.
that's because since then we check for the cycle (otherwise artifacts) it probably relates to these extra points (the 'standard' is somewhat fuzzy in that respect also because some fonts have them and some don't so it's the usual wait till we run into something issue) we can check for bounds for i=1,nofpoints do local d1, d2, d3 = find(i) local p2 = points[i] if d2 then xv[i] = xvalues[d2] yv[i] = yvalues[d2] else local n1 = dpoints[d1] local n3 = dpoints[d3] if n1 > nofpoints then n1 = nofpoints end if n3 > nofpoints then n3 = nofpoints end no crash then (the resulting shapes look good enough to me, assumign that the weird f is intended) Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------