#!/bin/bash
#TEST: AUTOMATIC
#TESTTIME: INSTANT
#TESTBUG: 1066589
#TESTDESCR: Reading file through command substituion should work with closed stdin, stdout, stderr
export ksh=${ksh:-ksh}
TMPF=$(mktemp)
echo ok >$TMPF
FAIL=""
export TMPF
[ -n "$($ksh -c 'echo $(<$TMPF)' <&-)" ] || FAIL="stdin $FAIL"
[ -n "$($ksh -c "$ksh -c 'echo \$(<$TMPF) >&2' >&-" 2>&1)" ] || FAIL="stdout $FAIL"
[ -n "$($ksh -c 'echo $(<$TMPF)' 2>&-)" ] || FAIL="stderr $FAIL"
rm -f $TMPF
if [ -n "$FAIL" ]
then
  echo "FAIL, \$(<file) empty when any of ${FAIL}is closed"
  exit 1
else
  echo "pass"
fi

