On Mon, 18 Jul 2011 10:26:27 +0200
Pavel Reznicek <reznicek@xxxxxxxxxxxxxxxxxxxxxx> wrote:
after upgrading to zsh 4.3.12 (in debian), I am having problems running
midnight commander in zsh (going back to zsh version 4.3.10 it works
fine). The symptom is that when trying to use the subshell in mc, it
complains about:
precmd: 15: bad file descriptor
and the mc session get hanged. Of course it could be bug in mc and not
zsh, but since this behaviour is not seen with zsh 4.3.10, the zsh updates
since that version can tell what is going on. Browsing the mc source code,
the precmd command defined in there is:
precmd(){ pwd>&%d;kill -STOP $$ }
Would some have an idea why this precmd command would cause the error
message above in connection of the updateds between zsh 4.3.10 and 4.3.12
?
So if it's not (obviously) related to the "stop", we probably need to
know what file descriptor is appearing there. If it's 1 or 2 there's
not obvious reason for parametrising it. If it's not, it's not obvious
what it would be --- something opened by mc, presumably, and possibly
getting FD_CLOEXEC set, if the problem only occurs in subshells.
Hmm... if it were the shell terminal output, this fix spotted by Bart
might be relevant:
* 27134: Src/exec.c, Src/init.c: improve 27131 by setting
FD_CLOEXEC for SHTTY or closing it by hand when executing.
but SHTTY isn't directly exposed to the shell user (which is why
we're closing it).
pws
Member of the CSR plc group of companies. CSR plc registered in England and Wales, registered number 4187346, registered office Churchill House, Cambridge Business Park, Cowley Road, Cambridge, CB4 0WZ, United Kingdom
More information can be found at www.csr.com. Follow CSR on Twitter at http://twitter.com/CSR_PLC and read our blog at www.csr.com/blog