On 5/20/2020 12:36 PM, Marcel Fabian Krüger wrote:
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.
end_file_reading is always called but has to close selectively,
dependent on what has been opened, eep in mind that a token list or so
is also an input stream
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
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the
Wiki!
maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage : http://www.pragma-ade.nl / http://context.aanhet.net
archive : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___________________________________________________________________________________