rc

[fork] interactive rc shell
Log | Files | Refs | README | LICENSE

commit 216659afe8132442e85e5a012984c276eed0ebbf
parent f5cf8df384be0b52cbf08015d77580d8f44a77d6
Author: tjg <tjg>
Date:   Wed, 19 Apr 2000 14:27:53 +0000

2000-04-19

  Bug: isatty() tests in input.c are relevant to any fd, not just 0.
  Now `. -i /dev/tty' works right.

  Bug: fn sigexit wasn't always cleared in child shells.

  Bug: `~ () '*'' dumped core.

Diffstat:
MChangeLog | 9+++++++++
Mtrip.rc | 14+++++++++++++-
2 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/ChangeLog b/ChangeLog @@ -665,3 +665,12 @@ Changes since rc-1.5b2 available on the web. Release: rc-1.6b2. + +2000-04-19 + + Bug: isatty() tests in input.c are relevant to any fd, not just 0. + Now `. -i /dev/tty' works right. + + Bug: fn sigexit wasn't always cleared in child shells. + + Bug: `~ () '*'' dumped core. diff --git a/trip.rc b/trip.rc @@ -318,7 +318,7 @@ submatch 'cdpath='''' cd frobnatz' 'couldn''t cd to frobnatz' 'cd to frobnatz su submatch 'wait 1 2 3' 'too many arguments to wait' 'arg count' $rc -c 'wait 1' >[2]/dev/null && fail wait 1 -sleep 5& +sleep 3& expect $apid echo $apids wait @@ -569,3 +569,15 @@ eof # Believe it or not, I broke root directory globbing in rc-1.6b1. x=/* ~ '/*' $^x && fail root directory globbing + +# fn sigexit should be cleared in children + +x = () +expect nonesuch not found +x = `{true | nonesuch}; if (~ $x trip) fail sigexit in children +x = `{ < /dev/null wc |grep xxx }; if (~ $x trip) fail sigexit in children +x = `{{ wc | wc } < /dev/null }; if (~ $x trip) fail sigexit in children + +# core dumps in glob.c +~ () '*' && fail globber problem +~ () '**' && fail globber problem