diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2018-03-31 19:21:31 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2018-03-31 19:40:56 +0200 |
commit | 220be537a03f029e1e619003d6f7def10103a156 (patch) | |
tree | 73a8c8d1a19796c15db0dc7b238cf8bc644a4e46 /shell/hush_test | |
parent | ad4e961352f04ba88019c4c2bb36c652ce9c51fa (diff) | |
download | busybox-w32-220be537a03f029e1e619003d6f7def10103a156.tar.gz busybox-w32-220be537a03f029e1e619003d6f7def10103a156.tar.bz2 busybox-w32-220be537a03f029e1e619003d6f7def10103a156.zip |
ash: use pgetc_eatbnl() in more places
Part of upstream commit:
Date: Thu Mar 8 08:37:11 2018 +0100
Author: Harald van Dijk <harald@gigawatt.nl>
parser: use pgetc_eatbnl() in more places
dash has a pgetc_eatbnl function in parser.c which skips any
backslash-newline combinations. It's not used everywhere it could be.
There is also some duplicated backslash-newline handling elsewhere in
parser.c. Replace most of the calls to pgetc() with calls to
pgetc_eatbnl() and remove the duplicated backslash-newline handling.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Not adding "readtoken1(pgetc_eatbnl(), DQSYNTAX..." changes, since
readtoken1() handles the "starts with backslash + newline" case itself.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell/hush_test')
-rw-r--r-- | shell/hush_test/hush-heredoc/heredoc_bkslash_newline1.right | 8 | ||||
-rwxr-xr-x | shell/hush_test/hush-heredoc/heredoc_bkslash_newline1.tests | 25 |
2 files changed, 33 insertions, 0 deletions
diff --git a/shell/hush_test/hush-heredoc/heredoc_bkslash_newline1.right b/shell/hush_test/hush-heredoc/heredoc_bkslash_newline1.right new file mode 100644 index 000000000..fdb7ebd03 --- /dev/null +++ b/shell/hush_test/hush-heredoc/heredoc_bkslash_newline1.right | |||
@@ -0,0 +1,8 @@ | |||
1 | heredoc0 | ||
2 | Ok0:0 | ||
3 | heredoc1 | ||
4 | Ok1:0 | ||
5 | heredoc2 | ||
6 | Ok2:0 | ||
7 | heredoc3 | ||
8 | Ok4:0 | ||
diff --git a/shell/hush_test/hush-heredoc/heredoc_bkslash_newline1.tests b/shell/hush_test/hush-heredoc/heredoc_bkslash_newline1.tests new file mode 100755 index 000000000..584edd0e4 --- /dev/null +++ b/shell/hush_test/hush-heredoc/heredoc_bkslash_newline1.tests | |||
@@ -0,0 +1,25 @@ | |||
1 | cat <\ | ||
2 | <\ | ||
3 | EOF | ||
4 | heredoc0 | ||
5 | EOF | ||
6 | echo Ok0:$? | ||
7 | |||
8 | cat <<\ | ||
9 | EOF | ||
10 | heredoc1 | ||
11 | EOF | ||
12 | echo Ok1:$? | ||
13 | |||
14 | cat <<\ | ||
15 | - EOF | ||
16 | heredoc2 | ||
17 | EOF | ||
18 | echo Ok2:$? | ||
19 | |||
20 | cat <\ | ||
21 | <\ | ||
22 | - EOF | ||
23 | heredoc3 | ||
24 | EOF | ||
25 | echo Ok4:$? | ||