<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Oct 10, 2015 at 10:21 AM, Hans Hagen <span dir="ltr"><<a href="mailto:pragma@wxs.nl" target="_blank">pragma@wxs.nl</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">On 10/10/2015 10:07 AM, luigi scarso wrote:<span class=""><br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
<br>
On Sat, Oct 10, 2015 at 5:20 AM, Akira Kakuto <kakuto@fuk.kindai..<a href="http://ac.jp" rel="noreferrer" target="_blank">ac.jp</a><br>
<mailto:<a href="mailto:kakuto@fuk.kindai.ac.jp" target="_blank">kakuto@fuk.kindai.ac.jp</a>>> wrote:<br>
<br>
Hi Norbert,<br>
<br>
Then I run lualatex on a simple file loading fontspec, and<br>
now lualatex always crashes with: ...<br>
<br>
<br>
Because the new LuaTeX and the luaotfload 2.5 are inconsistent.<br>
<br>
Thanks,<br>
Akira<br>
<br>
Can I reproduce it ?<br>
<br>
I'm using Master from TL and luatex from trunk<br>
<br>
$> luatex --credits<br>
This is LuaTeX, Version beta-0.81.1 (TeX Live 2016/dev)<br>
<br>
$> fmtutil --byfmt luatex<br>
$> fmtutil --byfmt lualatex<br>
are both ok.<br>
</blockquote>
<br></span>
it might relate to this fuzzy mixed zero glyph slot / mem testing issue (0, null, NULL) for which we introduced the min/man fields as catch so when a fontloader does it right there should be no crash<br>
<br>
Hans<br></blockquote><div><br></div><div><div>\documentclass{report}</div><div>\usepackage{luaotfload}</div><div>\usepackage {fontspec}</div><div>\begin{document} </div><div>foo</div><div>\end{document}</div></div><div><br></div><div> </div></div><br clear="all"><div><div>2613 static int ff_glyph_index(lua_State * L)</div><div>2614 { </div><div>2615 struct splinechar *glyph; </div><div>2616 int key; </div><div>2617 glyph = *check_isglyph(L, 1);</div><div>2618 if (glyph == NULL) { </div><div>2619 return luaL_error(L, </div><div>2620 "fontloader.glyph.__index: glyph is nonexistent\n");</div><div>2621 } </div><div>2622 if (!lua_isstring(L, 2)) { /* 1 == 'font' */ </div><div>2623 return luaL_error(L, </div><div>2624 "fontloader.glyph.__index: can only be indexed by string\n");</div><div>2625 }</div><div>2626 key = luaL_checkoption(L, 2, NULL, font_glyph_keys);</div><div>2627 switch (key) { </div><div>2628 case GK_name:</div><div>2629 lua_pushstring(L, glyph->name); </div><div>2630 break; </div><div>2631 case GK_unicode: </div><div>>2632 lua_pushnumber(L, glyph->unicodeenc); </div></div><br>where <br><div class="gmail_extra">luafontloader/src/luafflib.c:#define check_isglyph(L,b) (struct splinechar **)luaL_checkudata(L,b,FONT_GLYPH_METATABLE)</div><div><br></div><div><br></div><div>glyph is not a valid address.</div><div><br></div><div class="gmail_extra">This check_isglyph looks fragile.</div>-- <br><div class="gmail_signature">luigi<br></div>
</div></div>