xref: /dflybsd-src/tools/regression/bin/sh/parser/line-cont11.0 (revision 3e3895bf4584c1562faf4533cbd97026ee6a8dcf)
1*3e3895bfSKrzysztof Piecuch# $FreeBSD: head/bin/sh/tests/parser/line-cont11.0 273276 2014-10-19 11:59:15Z jilles $
2*3e3895bfSKrzysztof Piecuch
3*3e3895bfSKrzysztof PiecuchT=$(mktemp "${TMPDIR:-/tmp}/sh-test.XXXXXXXX") || exit
4*3e3895bfSKrzysztof Piecuchtrap 'rm -f -- "$T"' 0
5*3e3895bfSKrzysztof Piecuchw='#A'
6*3e3895bfSKrzysztof Piecuch# A naive pgetc_linecont() would push back two characters here, which
7*3e3895bfSKrzysztof Piecuch# fails if a new buffer is read between the two characters.
8*3e3895bfSKrzysztof Piecuchc='${w#\#}'
9*3e3895bfSKrzysztof Piecuchc=$c$c$c$c
10*3e3895bfSKrzysztof Piecuchc=$c$c$c$c
11*3e3895bfSKrzysztof Piecuchc=$c$c$c$c
12*3e3895bfSKrzysztof Piecuchc=$c$c$c$c
13*3e3895bfSKrzysztof Piecuchc=$c$c$c$c
14*3e3895bfSKrzysztof Piecuchc=$c$c$c$c
15*3e3895bfSKrzysztof Piecuchprintf 'v=%s\n' "$c" >"$T"
16*3e3895bfSKrzysztof Piecuch. "$T"
17*3e3895bfSKrzysztof Piecuchif [ "${#v}" != 4096 ]; then
18*3e3895bfSKrzysztof Piecuch	echo "Length is bad (${#v})"
19*3e3895bfSKrzysztof Piecuch	exit 3
20*3e3895bfSKrzysztof Piecuchfi
21*3e3895bfSKrzysztof Piecuchcase $v in
22*3e3895bfSKrzysztof Piecuch*[!A]*) echo "Content is bad"; exit 3 ;;
23*3e3895bfSKrzysztof Piecuchesac
24