113de33a5SJulio Merinoset -e 213de33a5SJulio Merinotrap 'echo Broken pipe -- test failed' PIPE 313de33a5SJulio Merino 413de33a5SJulio MerinoP=${TMPDIR:-/tmp} 513de33a5SJulio Merinocd $P 613de33a5SJulio MerinoT=$(mktemp -d sh-test.XXXXXX) 713de33a5SJulio Merinocd $T 813de33a5SJulio Merino 913de33a5SJulio Merinomkfifo input output error 10a1423456SPiotr Pawel StefaniakENV= HISTFILE=/dev/null ${SH} +m -i <input >output 2>error & 1113de33a5SJulio Merino{ 1213de33a5SJulio Merino # Syntax error 1313de33a5SJulio Merino echo ')' >&3 1413de33a5SJulio Merino # Read error message, shell will read new input now 1513de33a5SJulio Merino read dummy <&5 1613de33a5SJulio Merino # Execute bad command again 1713de33a5SJulio Merino echo 'fc -e true' >&3 1813de33a5SJulio Merino # Verify that the shell is still running 1913de33a5SJulio Merino echo 'echo continued' >&3 || rc=3 2013de33a5SJulio Merino echo 'exit' >&3 || rc=3 2113de33a5SJulio Merino read line <&4 && [ "$line" = continued ] && : ${rc:=0} 2213de33a5SJulio Merino} 3>input 4<output 5<error 2313de33a5SJulio Merino 2413de33a5SJulio Merinorm input output error 2513de33a5SJulio Merinormdir ${P}/${T} 2613de33a5SJulio Merinoexit ${rc:-3} 27