summaryrefslogtreecommitdiffstats
path: root/bin/sh/tests
diff options
context:
space:
mode:
authorjilles <jilles@FreeBSD.org>2014-10-28 22:14:31 +0000
committerjilles <jilles@FreeBSD.org>2014-10-28 22:14:31 +0000
commit10a925c0a7cdeafe07ede1a1e848377970d03b2a (patch)
treebff51b62df045acab93fc518d065dddfe5e233c3 /bin/sh/tests
parentd47eb7d2d46dabce3135bac7e98b771b40aff97d (diff)
downloadFreeBSD-src-10a925c0a7cdeafe07ede1a1e848377970d03b2a.zip
FreeBSD-src-10a925c0a7cdeafe07ede1a1e848377970d03b2a.tar.gz
Treat IFS separators in "$*" as quoted.
This makes a difference if IFS starts with *, ?, [ or a CTL* byte.
Diffstat (limited to 'bin/sh/tests')
-rw-r--r--bin/sh/tests/parameters/Makefile2
-rw-r--r--bin/sh/tests/parameters/positional6.07
-rw-r--r--bin/sh/tests/parameters/positional7.08
3 files changed, 17 insertions, 0 deletions
diff --git a/bin/sh/tests/parameters/Makefile b/bin/sh/tests/parameters/Makefile
index 4716529..231ed4d 100644
--- a/bin/sh/tests/parameters/Makefile
+++ b/bin/sh/tests/parameters/Makefile
@@ -18,6 +18,8 @@ FILES+= positional2.0
FILES+= positional3.0
FILES+= positional4.0
FILES+= positional5.0
+FILES+= positional6.0
+FILES+= positional7.0
FILES+= pwd1.0
FILES+= pwd2.0
diff --git a/bin/sh/tests/parameters/positional6.0 b/bin/sh/tests/parameters/positional6.0
new file mode 100644
index 0000000..1410668
--- /dev/null
+++ b/bin/sh/tests/parameters/positional6.0
@@ -0,0 +1,7 @@
+# $FreeBSD$
+
+IFS=?
+set p r
+v=pqrs
+r=${v#"$*"}
+[ "$r" = pqrs ]
diff --git a/bin/sh/tests/parameters/positional7.0 b/bin/sh/tests/parameters/positional7.0
new file mode 100644
index 0000000..f170ad3
--- /dev/null
+++ b/bin/sh/tests/parameters/positional7.0
@@ -0,0 +1,8 @@
+# $FreeBSD$
+
+set -- / ''
+IFS=*
+set -- "$*"
+IFS=:
+args="$*"
+[ "$#:$args" = "1:/*" ]
OpenPOWER on IntegriCloud