diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2016-07-25 03:56:00 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2016-07-25 03:56:00 +0200 |
commit | f8ddbe1ccce9eceaaac28b4b1aa71631fcc56db6 (patch) | |
tree | 0782f9ae0ab8bfb74ad8c3fca455f2dcd4de6b33 /shell/ash_test | |
parent | 0fb0045aa9261be1dda49dfdfb95cbc585402a8b (diff) | |
download | busybox-f8ddbe1ccce9eceaaac28b4b1aa71631fcc56db6.tar.gz |
ash: fix handling of ${VAR: -2}
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell/ash_test')
-rw-r--r-- | shell/ash_test/ash-vars/var_bash1a.right | 6 | ||||
-rwxr-xr-x | shell/ash_test/ash-vars/var_bash1a.tests | 11 |
2 files changed, 17 insertions, 0 deletions
diff --git a/shell/ash_test/ash-vars/var_bash1a.right b/shell/ash_test/ash-vars/var_bash1a.right new file mode 100644 index 000000000..1965b5c6c --- /dev/null +++ b/shell/ash_test/ash-vars/var_bash1a.right @@ -0,0 +1,6 @@ +parameter 'abcdef' +varoffset2 'cdef' +varoffset-2 'ef' +literal '2' 'cdef' +literal '-2' 'abcdef' +literal ' -2' 'ef' diff --git a/shell/ash_test/ash-vars/var_bash1a.tests b/shell/ash_test/ash-vars/var_bash1a.tests new file mode 100755 index 000000000..551dd9acc --- /dev/null +++ b/shell/ash_test/ash-vars/var_bash1a.tests @@ -0,0 +1,11 @@ +parameter=abcdef +offset=2 +noffset=-2 +echo "parameter '${parameter}'" +echo "varoffset2 '${parameter:${offset}}'" +echo "varoffset-2 '${parameter:${noffset}}'" +echo "literal '2' '${parameter:2}'" +# This is not inrpreted as ${VAR:POS{:LEN}}, +# but as ${VAR:=WORD} - if VAR is unset or null, substitute WORD +echo "literal '-2' '${parameter:-2}'" +echo "literal ' -2' '${parameter: -2}'" |