On Wed, May 20, 2020 at 12:13:01PM +0200, Hans Hagen wrote:
On 5/20/2020 2:39 AM, Marcel Fabian Krüger wrote:
Hi,
using \read on any existing file seems to trigger a segfault on lmtx. For example, take the document
\starttext \newread\myread \openinputfile\myread{test} \read\myread to \abc \closeinputfile\myread \stoptext
where test.tex is any file (It doesn't matter if the file is empty or not). On my system (linux x64, latest lmtx) this results in
mtx-context | fatal error: return code: 139
hm, looks like i close the file too soon (these read files are autoclosed on read) .. i'll fix it
Which file is closed here? Experiments with a custom format suggest that the read files are opened through the `open_data_file` callback, so even if they are closed they probably should be closed by calling the `.close` member of the returned table. But that never happens (This might be a related bug: In my experiments, even for files loaded with `\input`, the close function is never called.) and the issue seems to occur even if there is no real file opened for this. So I don't see why LuaMetaTeX should call fclose here at all. But anyway, thanks for looking into this. Marcel