diff options
| author | tjg <tjg> | 1999-10-13 15:36:23 +0000 |
|---|---|---|
| committer | Toby Goodwin <toby@paccrat.org> | 2015-05-16 21:23:16 +0100 |
| commit | 55187d8e921d611b3fa9ff4a166125c44b7dd6d9 (patch) | |
| tree | b9efe31261e5905e541478148c862c1377ef0e18 | |
| parent | 40b965f8ff43131e22b0eb9cdafd2754166b0b76 (diff) | |
1999-10-13
Bug: a read(2) error in fdgchar() should call rc_raise(), not
rc_exit(). This bug is easily tickled on systems (like Linux) which
allow you to open(2) but not read(2) directories: `. /tmp'. In all
previous versions of rc, this caused the shell to exit.
| -rw-r--r-- | ChangeLog | 7 | ||||
| -rw-r--r-- | input.c | 2 |
2 files changed, 8 insertions, 1 deletions
@@ -617,3 +617,10 @@ Changes since rc-1.5b2 Portability: status.c assumes traditional Unix layout of 0 and 1 exit statuses in the parent, which is not shared by BeOS. Add mkstatval.c. + +1999-10-13 + + Bug: a read(2) error in fdgchar() should call rc_raise(), not + rc_exit(). This bug is easily tickled on systems (like Linux) which + allow you to open(2) but not read(2) directories: `. /tmp'. In all + previous versions of rc, this caused the shell to exit. @@ -125,7 +125,7 @@ static int fdgchar() { } while (r < 0 && errno == EINTR); if (r < 0) { uerror("read"); - rc_exit(1); + rc_raise(eError); } chars_in = (size_t) r; } |