From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: Date: Sat, 30 Jan 2016 17:31:27 +0100 From: cinap_lenrek@felloff.net To: 9fans@9fans.net MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Subject: [9fans] rc exec error behaviour Topicbox-Message-UUID: 8067b92c-ead9-11e9-9d60-3106f5b1d025 in the rc shell, when one has exec statement and the exec fails, rc tries to continue interpreting statements after the exec which fails with a strange EOF error because in the process of preparing filedescriptors for exec, the very fd thats used to read the script was closed. burnzez provided an example of this like: term% rc -c 'exec doesnotexist; echo test' doesnotexist: './doesnotexist' directory entry not found test rc: /rc/lib/rcmain:29: token EOF: syntax error the manpage does not explicitely specify what should happen when exec fails. i did try to have rc open the . script as OCEXEC and that fixed the problem, but it wont work for any other redirections and will have side effects as the close-on-exec flag is a propery of the channel and not of the file descriptor slot. so imagine stuff like . /fd/0... i think it would me most resonable to just have rc exit with error status on failure. are there any objections to this? -- cinap