summaryrefslogtreecommitdiff
path: root/shell/hush_test
diff options
context:
space:
mode:
authorDenys Vlasenko2011-08-01 18:16:43 +0200
committerDenys Vlasenko2011-08-01 18:16:43 +0200
commit6e42b89b8d136316e1b97b56cf885e8ef9d64caf (patch)
treeb22a7d3e771d5262c39058764f13ac62c5cfe731 /shell/hush_test
parent4fb53fb08ce3da8eac13438ce613df20e523c75d (diff)
downloadbusybox-6e42b89b8d136316e1b97b56cf885e8ef9d64caf.zip
busybox-6e42b89b8d136316e1b97b56cf885e8ef9d64caf.tar.gz
hush: fix remaining known two bugs with IFS expansion. Closes 4027.
function old new delta expand_vars_to_list 1054 1140 +86 parse_stream 2425 2479 +54 expand_on_ifs 258 310 +52 builtin_umask 133 132 -1 done_word 820 779 -41 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/2 up/down: 192/-42) Total: 150 bytes Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell/hush_test')
-rw-r--r--shell/hush_test/hush-parsing/starquoted2.right3
-rwxr-xr-xshell/hush_test/hush-parsing/starquoted2.tests6
2 files changed, 6 insertions, 3 deletions
diff --git a/shell/hush_test/hush-parsing/starquoted2.right b/shell/hush_test/hush-parsing/starquoted2.right
index e1562ed..1bff408 100644
--- a/shell/hush_test/hush-parsing/starquoted2.right
+++ b/shell/hush_test/hush-parsing/starquoted2.right
@@ -1,4 +1,7 @@
Should be printed
+Would not be printed by bash
+Would not be printed by bash
+Would not be printed by bash
Should be printed
Empty:
Empty:
diff --git a/shell/hush_test/hush-parsing/starquoted2.tests b/shell/hush_test/hush-parsing/starquoted2.tests
index f305c4c..7c5ff45 100755
--- a/shell/hush_test/hush-parsing/starquoted2.tests
+++ b/shell/hush_test/hush-parsing/starquoted2.tests
@@ -8,9 +8,9 @@ for a in "$@"; do echo Should not be printed; done
# Yes, believe it or not, bash is mesmerized by "$@" and stops
# treating "" as "this word cannot be expanded to nothing,
# but must be at least null string". Now it can be expanded to nothing.
-for a in "$@"""; do echo Should not be printed; done
-for a in """$@"; do echo Should not be printed; done
-for a in """$@"''"$@"''; do echo Should not be printed; done
+for a in "$@"""; do echo Would not be printed by bash; done
+for a in """$@"; do echo Would not be printed by bash; done
+for a in """$@"''"$@"''; do echo Would not be printed by bash; done
for a in ""; do echo Should be printed; done
# Bug 207: "$@" expands to nothing, and we erroneously glob "%s\n" twice: