|
From: | Paul Eggert |
Subject: | bug#27642: 26.0.50; Assertion failure with nested load |
Date: | Thu, 13 Jul 2017 11:24:10 -0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.2.1 |
On 07/13/2017 11:08 AM, Eli Zaretskii wrote:
Doesn't that get in the way of the outer call, if it then tries to resume its readevalloop?
The outer call reassigns its own value to the 'infile' static variable before resuming the loop. This reassignment was needed even before my recent lread.c changes (the static variable was called 'instream' back then). A reassignment is needed because the outer call cannot continue to read from a closed FILE * value, as that would have undefined behavior.
Admittedly this structure is rickety. lread.c should be made reentrant. But that would be a bigger project.
[Prev in Thread] | Current Thread | [Next in Thread] |