aboutsummaryrefslogtreecommitdiff
path: root/shell/match.c
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2017-01-11 19:59:03 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2017-01-11 19:59:03 +0100
commit098b713c7b5b22fc60b606be97da431eaedc6639 (patch)
treed1eef52f5412f67ea2991d86fd236386c217151d /shell/match.c
parent4c179373e07fbc1d8fc8e53c7096fce9ee4b08b6 (diff)
downloadbusybox-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/match.c')
0 files changed, 0 insertions, 0 deletions