# Chars above 0x7f are used as special codes.
# 0x81 is CTLESC (see ash.c).
# The bug was that quoting and unquoting of them
# was out of sync for redirect filenames.

# Subcase when redirect filename is specified in a variable.

>unicode.sh
echo -e 'v=uni\x81code' >>unicode.sh
echo -e 'echo Ok >"$v"' >>unicode.sh
echo -e 'cat uni\x81code' >>unicode.sh
echo -e 'cat uni?code' >>unicode.sh
. ./unicode.sh
rm uni*code*
echo Done
