diff options
Diffstat (limited to 'shell')
-rw-r--r-- | shell/ash.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/shell/ash.c b/shell/ash.c index 8ef8c465c..2db3302c7 100644 --- a/shell/ash.c +++ b/shell/ash.c | |||
@@ -6528,6 +6528,10 @@ setjobctl(int on) | |||
6528 | int ofd; | 6528 | int ofd; |
6529 | ofd = fd = open(_PATH_TTY, O_RDWR); | 6529 | ofd = fd = open(_PATH_TTY, O_RDWR); |
6530 | if (fd < 0) { | 6530 | if (fd < 0) { |
6531 | /* BTW, bash will try to open(ttyname(0)) if open("/dev/tty") fails. | ||
6532 | * That sometimes helps to acquire controlling tty. | ||
6533 | * Obviously, a workaround for bugs when someone | ||
6534 | * failed to provide a controlling tty to bash! :) */ | ||
6531 | fd += 3; | 6535 | fd += 3; |
6532 | while (!isatty(fd) && --fd >= 0) | 6536 | while (!isatty(fd) && --fd >= 0) |
6533 | ; | 6537 | ; |