From 935c68573f8e63468723dc2691957637e4e6bcb7 Mon Sep 17 00:00:00 2001 From: Curtis McEnroe Date: Thu, 10 Jan 2019 18:48:02 -0500 Subject: Import /usr/src/bin/sh from FreeBSD 12.0-RELEASE --- bin/cash/tests/parser/line-cont11.0 | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 bin/cash/tests/parser/line-cont11.0 (limited to 'bin/cash/tests/parser/line-cont11.0') diff --git a/bin/cash/tests/parser/line-cont11.0 b/bin/cash/tests/parser/line-cont11.0 new file mode 100644 index 00000000..dfddf01d --- /dev/null +++ b/bin/cash/tests/parser/line-cont11.0 @@ -0,0 +1,23 @@ +# $FreeBSD: releng/12.0/bin/sh/tests/parser/line-cont11.0 273276 2014-10-19 11:59:15Z jilles $ + +T=$(mktemp "${TMPDIR:-/tmp}/sh-test.XXXXXXXX") || exit +trap 'rm -f -- "$T"' 0 +w='#A' +# A naive pgetc_linecont() would push back two characters here, which +# fails if a new buffer is read between the two characters. +c='${w#\#}' +c=$c$c$c$c +c=$c$c$c$c +c=$c$c$c$c +c=$c$c$c$c +c=$c$c$c$c +c=$c$c$c$c +printf 'v=%s\n' "$c" >"$T" +. "$T" +if [ "${#v}" != 4096 ]; then + echo "Length is bad (${#v})" + exit 3 +fi +case $v in +*[!A]*) echo "Content is bad"; exit 3 ;; +esac -- cgit 1.4.1