diff options
author | kraai <kraai@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2001-07-12 19:39:59 +0000 |
---|---|---|
committer | kraai <kraai@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2001-07-12 19:39:59 +0000 |
commit | 2e2b0c24a40ade30387df0a9114a8ce5c77f059f (patch) | |
tree | 0cf9a5b952d656fd624785a4f42ac0631ef57471 | |
parent | c11797ed23a2ba03abac781af60a986863abf697 (diff) | |
download | busybox-w32-2e2b0c24a40ade30387df0a9114a8ce5c77f059f.tar.gz busybox-w32-2e2b0c24a40ade30387df0a9114a8ce5c77f059f.tar.bz2 busybox-w32-2e2b0c24a40ade30387df0a9114a8ce5c77f059f.zip |
Allow assignments in the export and readonly commands.
git-svn-id: svn://busybox.net/trunk/busybox@3077 69ca8d6d-28ef-0310-b511-8ec308f3f277
-rw-r--r-- | msh.c | 10 | ||||
-rw-r--r-- | shell/msh.c | 10 |
2 files changed, 18 insertions, 2 deletions
@@ -3331,11 +3331,19 @@ void (*f)(); | |||
3331 | int key; | 3331 | int key; |
3332 | { | 3332 | { |
3333 | if (*wp != NULL) { | 3333 | if (*wp != NULL) { |
3334 | for (; *wp != NULL; wp++) | 3334 | for (; *wp != NULL; wp++) { |
3335 | if (isassign(*wp)) { | ||
3336 | char *cp; | ||
3337 | assign(*wp, COPYV); | ||
3338 | for (cp = *wp; *cp != '='; cp++) | ||
3339 | ; | ||
3340 | *cp = '\0'; | ||
3341 | } | ||
3335 | if (checkname(*wp)) | 3342 | if (checkname(*wp)) |
3336 | (*f)(lookup(*wp)); | 3343 | (*f)(lookup(*wp)); |
3337 | else | 3344 | else |
3338 | badid(*wp); | 3345 | badid(*wp); |
3346 | } | ||
3339 | } else | 3347 | } else |
3340 | putvlist(key, 1); | 3348 | putvlist(key, 1); |
3341 | } | 3349 | } |
diff --git a/shell/msh.c b/shell/msh.c index efba6a1ee..230d74f5a 100644 --- a/shell/msh.c +++ b/shell/msh.c | |||
@@ -3331,11 +3331,19 @@ void (*f)(); | |||
3331 | int key; | 3331 | int key; |
3332 | { | 3332 | { |
3333 | if (*wp != NULL) { | 3333 | if (*wp != NULL) { |
3334 | for (; *wp != NULL; wp++) | 3334 | for (; *wp != NULL; wp++) { |
3335 | if (isassign(*wp)) { | ||
3336 | char *cp; | ||
3337 | assign(*wp, COPYV); | ||
3338 | for (cp = *wp; *cp != '='; cp++) | ||
3339 | ; | ||
3340 | *cp = '\0'; | ||
3341 | } | ||
3335 | if (checkname(*wp)) | 3342 | if (checkname(*wp)) |
3336 | (*f)(lookup(*wp)); | 3343 | (*f)(lookup(*wp)); |
3337 | else | 3344 | else |
3338 | badid(*wp); | 3345 | badid(*wp); |
3346 | } | ||
3339 | } else | 3347 | } else |
3340 | putvlist(key, 1); | 3348 | putvlist(key, 1); |
3341 | } | 3349 | } |