diff options
author | June McEnroe <june@causal.agency> | 2020-03-09 04:00:31 -0400 |
---|---|---|
committer | June McEnroe <june@causal.agency> | 2020-03-09 04:00:31 -0400 |
commit | 40b33b6b04d81d2c6ca52175a83c31fa1bc91621 (patch) | |
tree | 8f56816b0766def94e119754c95fb2b1d12e2baf /bin/1sh/tests/builtins/fc2.0 | |
parent | Remove 1sh sources (diff) | |
download | src-40b33b6b04d81d2c6ca52175a83c31fa1bc91621.tar.gz src-40b33b6b04d81d2c6ca52175a83c31fa1bc91621.zip |
Import /usr/src/bin/sh from FreeBSD 12.1-RELEASE
Diffstat (limited to 'bin/1sh/tests/builtins/fc2.0')
-rw-r--r-- | bin/1sh/tests/builtins/fc2.0 | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/bin/1sh/tests/builtins/fc2.0 b/bin/1sh/tests/builtins/fc2.0 new file mode 100644 index 00000000..ac267566 --- /dev/null +++ b/bin/1sh/tests/builtins/fc2.0 @@ -0,0 +1,34 @@ +# $FreeBSD: releng/12.1/bin/sh/tests/builtins/fc2.0 213738 2010-10-12 18:20:38Z obrien $ +set -e +trap 'echo Broken pipe -- test failed' PIPE + +P=${TMPDIR:-/tmp} +cd $P +T=$(mktemp -d sh-test.XXXXXX) +cd $T + +mkfifo input output error +HISTFILE=/dev/null ${SH} +m -i <input >output 2>error & +exec 3>input +{ + # Command not found, containing slash + echo '/var/empty/nonexistent' >&3 + # Read error message, shell will read new input now + read dummy <&5 + # Execute bad command again + echo 'fc -e true; echo continued' >&3 + read dummy <&5 + read line <&4 && [ "$line" = continued ] && : ${rc:=0} + exec 3>&- + # Old sh duplicates itself after the fc, producing another line + # of output. + if read line <&4; then + echo "Extraneous output: $line" + rc=1 + fi +} 4<output 5<error +exec 3>&- + +rm input output error +rmdir ${P}/${T} +exit ${rc:-3} |