xref: /dflybsd-src/tools/regression/bin/sh/builtins/fc1.0 (revision 3e3895bf4584c1562faf4533cbd97026ee6a8dcf)
1*3e3895bfSKrzysztof Piecuch# $FreeBSD: head/bin/sh/tests/builtins/fc1.0 213738 2010-10-12 18:20:38Z obrien $
23df4d8b0SPeter Avalosset -e
33df4d8b0SPeter Avalostrap 'echo Broken pipe -- test failed' PIPE
43df4d8b0SPeter Avalos
53df4d8b0SPeter AvalosP=${TMPDIR:-/tmp}
63df4d8b0SPeter Avaloscd $P
73df4d8b0SPeter AvalosT=$(mktemp -d sh-test.XXXXXX)
83df4d8b0SPeter Avaloscd $T
93df4d8b0SPeter Avalos
103df4d8b0SPeter Avalosmkfifo input output error
113df4d8b0SPeter AvalosHISTFILE=/dev/null ${SH} +m -i <input >output 2>error &
123df4d8b0SPeter Avalos{
133df4d8b0SPeter Avalos	# Syntax error
143df4d8b0SPeter Avalos	echo ')' >&3
153df4d8b0SPeter Avalos	# Read error message, shell will read new input now
163df4d8b0SPeter Avalos	read dummy <&5
173df4d8b0SPeter Avalos	# Execute bad command again
183df4d8b0SPeter Avalos	echo 'fc -e true' >&3
193df4d8b0SPeter Avalos	# Verify that the shell is still running
203df4d8b0SPeter Avalos	echo 'echo continued' >&3 || rc=3
213df4d8b0SPeter Avalos	echo 'exit' >&3 || rc=3
223df4d8b0SPeter Avalos	read line <&4 && [ "$line" = continued ] && : ${rc:=0}
233df4d8b0SPeter Avalos} 3>input 4<output 5<error
243df4d8b0SPeter Avalos
253df4d8b0SPeter Avalosrm input output error
263df4d8b0SPeter Avalosrmdir ${P}/${T}
273df4d8b0SPeter Avalosexit ${rc:-3}
28