summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorPádraig Brady <P@draigBrady.com>2023-04-21 19:07:02 +0100
committerPádraig Brady <P@draigBrady.com>2023-04-21 19:13:52 +0100
commit6bab375973e62e9fcc0b41451d637134073e3007 (patch)
tree9d4f445e56585b7f2c482ab939c39884d37c63c3 /tests
parentf6229adb09b9ace9bd0034a2c228fcee224c0563 (diff)
downloadcoreutils-6bab375973e62e9fcc0b41451d637134073e3007.tar.gz
install: support stripping files with a leading hyphen
* src/install.c (strip): Prepend "./" to file names with a leading "-". * tests/install/strip-program.sh: Add a test case. * NEWS: Mention the bug fix. Reported in https://bugs.debian.org/1034429
Diffstat (limited to 'tests')
-rwxr-xr-xtests/install/strip-program.sh10
1 files changed, 9 insertions, 1 deletions
diff --git a/tests/install/strip-program.sh b/tests/install/strip-program.sh
index 0a702f7fa..1b7de52a2 100755
--- a/tests/install/strip-program.sh
+++ b/tests/install/strip-program.sh
@@ -27,7 +27,6 @@ sed s/b/B/ \$1 > \$1.t && mv \$1.t \$1
EOF
chmod a+x b || framework_failure_
-
echo abc > src || framework_failure_
echo aBc > exp || framework_failure_
ginstall src dest -s --strip-program=./b || fail=1
@@ -37,4 +36,13 @@ compare exp dest || fail=1
returns_ 1 ginstall src dest2 -s --strip-program=./FOO || fail=1
test -e dest2 && fail=1
+# Ensure naked hyphens not passed
+cat <<EOF > no-hyphen || framework_failure_
+#!$SHELL
+printf -- '%s\\n' "\$1" | grep '^[^-]'
+EOF
+chmod a+x no-hyphen || framework_failure_
+
+ginstall -s --strip-program=./no-hyphen -- src -dest || fail=1
+
Exit $fail