diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2017-01-11 19:59:03 +0100 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2017-01-11 19:59:03 +0100 |
commit | 098b713c7b5b22fc60b606be97da431eaedc6639 (patch) | |
tree | d1eef52f5412f67ea2991d86fd236386c217151d /shell/math.c | |
parent | 4c179373e07fbc1d8fc8e53c7096fce9ee4b08b6 (diff) | |
download | busybox-098b713c7b5b22fc60b606be97da431eaedc6639.tar.gz |
ash: commented-out possible fix for 7694
bash has a feature: it restores termios after a successful wait for
a foreground job which had at least one stopped or sigkilled member.
The probable rationale is that SIGSTOP and SIGKILL can preclude task from
properly restoring tty state. Should we do this too?
A reproducer: ^Z an interactive python:
$ python
Python 2.7.12 (...)
>>> ^Z
{ python leaves tty in -icanon -echo state. We do survive that... }
[1]+ Stopped python
{ ...however, next program (python no.2) does not survive it well: }
$ python
Python 2.7.12 (...)
>>> Traceback (most recent call last):
{ above, I typed "qwerty<CR>", but -echo state is still in effect }
File "<stdin>", line 1, in <module>
NameError: name 'qwerty' is not defined
The implementation is modeled on bash code and seems to work.
However, I'm not sure we should do this. For one: what if I'd fg
the stopped python instead? It'll be confused by "restored" tty state.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell/math.c')
0 files changed, 0 insertions, 0 deletions