diff options
author | Eli Schwartz <eschwartz@archlinux.org> | 2019-10-27 08:05:10 +0100 |
---|---|---|
committer | Allan McRae <allan@archlinux.org> | 2019-10-30 00:47:28 +0100 |
commit | a745d97c174ef1d85649b2a8ad7ca22e3dea9e58 (patch) | |
tree | c748bc75c49e91555503ee7bbeb764a269da1e9e /scripts/libmakepkg/tidy/staticlibs.sh.in | |
parent | 99639dc27c4c037b3fe7ddf2b77d036a7332b5e3 (diff) | |
download | pacman-a745d97c174ef1d85649b2a8ad7ca22e3dea9e58.tar.gz pacman-a745d97c174ef1d85649b2a8ad7ca22e3dea9e58.tar.xz |
makepkg: protect against unexpected whitespace in filenames
zipman:
read -r protects against those evil manpages whose filenames contain
backslash escapes, (muahahaha?)
IFS= read protects against filenames with:
- leading whitespace (but no one is actually stupid enough to configure
their MAN_DIRS=() in makepkg.conf with such silly directories, *right*?)
- trailing whitespace (but likewise, no one should be stupid enough to
write an uncompressed manpage for section '1 ' or something)
Also fix several other cases where we read filenames without protecting
against surrounding whitespace, or without using null-delimited
filenames when we could trivially do so.
Signed-off-by: Eli Schwartz <eschwartz@archlinux.org>
Signed-off-by: Allan McRae <allan@archlinux.org>
Diffstat (limited to 'scripts/libmakepkg/tidy/staticlibs.sh.in')
-rw-r--r-- | scripts/libmakepkg/tidy/staticlibs.sh.in | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/scripts/libmakepkg/tidy/staticlibs.sh.in b/scripts/libmakepkg/tidy/staticlibs.sh.in index eaa6ac8a..bf7601d2 100644 --- a/scripts/libmakepkg/tidy/staticlibs.sh.in +++ b/scripts/libmakepkg/tidy/staticlibs.sh.in @@ -34,7 +34,7 @@ tidy_staticlibs() { if check_option "staticlibs" "n"; then msg2 "$(gettext "Removing static library files...")" local l - while read -rd '' l; do + while IFS= read -rd '' l; do if [[ -f "${l%.a}.so" || -h "${l%.a}.so" ]]; then rm "$l" fi |