diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2017-07-25 16:29:36 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2017-07-25 16:29:36 +0200 |
commit | b28d4c3462e6b0e66322503f5ef0b941e0bb9cb8 (patch) | |
tree | d25bf78558574cdd8de6b802cf6486f66dfc6db9 /shell/hush_test | |
parent | be669fa1fdff6f751c8cdd3fc18a9fa7a7f46cd3 (diff) | |
download | busybox-w32-b28d4c3462e6b0e66322503f5ef0b941e0bb9cb8.tar.gz busybox-w32-b28d4c3462e6b0e66322503f5ef0b941e0bb9cb8.tar.bz2 busybox-w32-b28d4c3462e6b0e66322503f5ef0b941e0bb9cb8.zip |
ash: [VAR] Move unsetvar functionality into setvareq
Upstream commit:
Date: Tue, 25 May 2010 20:55:05 +0800
[VAR] Move unsetvar functionality into setvareq
This patch moves the unsetvar code into setvareq so that we can
no have a pathological case of an unset variable hanging around
unless it has a bit pinning it like VEXPORT.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
function old new delta
setvareq 227 303 +76
expmeta 517 521 +4
localcmd 364 366 +2
unsetcmd 96 76 -20
unsetvar 129 7 -122
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/2 up/down: 82/-142) Total: -60 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'shell/hush_test')
-rw-r--r-- | shell/hush_test/hush-vars/unset.right | 4 | ||||
-rwxr-xr-x | shell/hush_test/hush-vars/unset.tests | 7 |
2 files changed, 7 insertions, 4 deletions
diff --git a/shell/hush_test/hush-vars/unset.right b/shell/hush_test/hush-vars/unset.right index 1fbe76a73..097274201 100644 --- a/shell/hush_test/hush-vars/unset.right +++ b/shell/hush_test/hush-vars/unset.right | |||
@@ -12,7 +12,7 @@ ___ | |||
12 | 0 f g | 12 | 0 f g |
13 | 0 | 13 | 0 |
14 | ___ | 14 | ___ |
15 | hush: HUSH_VERSION: readonly variable | 15 | hush: VAR_RO: readonly variable |
16 | 1 f g | 16 | 1 f g |
17 | hush: HUSH_VERSION: readonly variable | 17 | hush: VAR_RO: readonly variable |
18 | 1 | 18 | 1 |
diff --git a/shell/hush_test/hush-vars/unset.tests b/shell/hush_test/hush-vars/unset.tests index f59ce5923..81243fbf9 100755 --- a/shell/hush_test/hush-vars/unset.tests +++ b/shell/hush_test/hush-vars/unset.tests | |||
@@ -1,4 +1,5 @@ | |||
1 | # check invalid options are rejected | 1 | # check invalid options are rejected |
2 | # bash: in posix mode, aborts if non-interactive | ||
2 | unset - | 3 | unset - |
3 | echo $? | 4 | echo $? |
4 | unset -m a b c | 5 | unset -m a b c |
@@ -30,7 +31,9 @@ echo $? $f $g | |||
30 | # check read only vars | 31 | # check read only vars |
31 | echo ___ | 32 | echo ___ |
32 | f=f g=g | 33 | f=f g=g |
33 | unset HUSH_VERSION | 34 | VAR_RO=1 |
35 | readonly VAR_RO | ||
36 | unset VAR_RO | ||
34 | echo $? $f $g | 37 | echo $? $f $g |
35 | unset f HUSH_VERSION g | 38 | unset f VAR_RO g |
36 | echo $? $f $g | 39 | echo $? $f $g |