diff options
author | Denys Vlasenko <vda.linux@googlemail.com> | 2009-08-20 03:38:58 +0200 |
---|---|---|
committer | Denys Vlasenko <vda.linux@googlemail.com> | 2009-08-20 03:38:58 +0200 |
commit | a67a9627d0ada5214d43d06a34387cd9604108c8 (patch) | |
tree | 5f227c2f71857e11636cebdd57f547332b137050 | |
parent | ffc39202aad7858bbe4a894f0e81e7ec313b5478 (diff) | |
download | busybox-w32-a67a9627d0ada5214d43d06a34387cd9604108c8.tar.gz busybox-w32-a67a9627d0ada5214d43d06a34387cd9604108c8.tar.bz2 busybox-w32-a67a9627d0ada5214d43d06a34387cd9604108c8.zip |
hush: do not process options after non-option args
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
-rw-r--r-- | shell/hush.c | 2 | ||||
-rw-r--r-- | shell/hush_test/hush-misc/opts1.right | 2 | ||||
-rwxr-xr-x | shell/hush_test/hush-misc/opts1.tests | 5 |
3 files changed, 8 insertions, 1 deletions
diff --git a/shell/hush.c b/shell/hush.c index 08e7f5052..b71e1b624 100644 --- a/shell/hush.c +++ b/shell/hush.c | |||
@@ -6461,7 +6461,7 @@ int hush_main(int argc, char **argv) | |||
6461 | /* http://www.opengroup.org/onlinepubs/9699919799/utilities/sh.html */ | 6461 | /* http://www.opengroup.org/onlinepubs/9699919799/utilities/sh.html */ |
6462 | builtin_argc = 0; | 6462 | builtin_argc = 0; |
6463 | while (1) { | 6463 | while (1) { |
6464 | opt = getopt(argc, argv, "c:xins" | 6464 | opt = getopt(argc, argv, "+c:xins" |
6465 | #if !BB_MMU | 6465 | #if !BB_MMU |
6466 | "<:$:R:V:" | 6466 | "<:$:R:V:" |
6467 | # if ENABLE_HUSH_FUNCTIONS | 6467 | # if ENABLE_HUSH_FUNCTIONS |
diff --git a/shell/hush_test/hush-misc/opts1.right b/shell/hush_test/hush-misc/opts1.right new file mode 100644 index 000000000..4da75737d --- /dev/null +++ b/shell/hush_test/hush-misc/opts1.right | |||
@@ -0,0 +1,2 @@ | |||
1 | Param1: >-10qwertyuiop< | ||
2 | Done | ||
diff --git a/shell/hush_test/hush-misc/opts1.tests b/shell/hush_test/hush-misc/opts1.tests new file mode 100755 index 000000000..45a23d66b --- /dev/null +++ b/shell/hush_test/hush-misc/opts1.tests | |||
@@ -0,0 +1,5 @@ | |||
1 | if test $# = 0; then | ||
2 | exec "$THIS_SH" $0 -10qwertyuiop | ||
3 | fi | ||
4 | echo "Param1: >$1<" | ||
5 | echo Done | ||