From 13a1d5883c9aa81ee10d61cbe4c2f2223dad9a50 Mon Sep 17 00:00:00 2001 From: Dan McGee Date: Tue, 14 Feb 2012 10:11:43 -0600 Subject: scripts: unset CDPATH if cd is used This wonderful/awful little bash shell variable wrecks havoc on `cd` calls in shell scripts. Unset CDPATH in makepkg where we use `cd` quite heavily. In pacman-optimize, we can move the change directory logic into the bsdtar call so we are left with no usages of `cd` in the script. Signed-off-by: Dan McGee --- scripts/makepkg.sh.in | 2 ++ scripts/pacman-optimize.sh.in | 3 +-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index 80bb1c94..5e8687e7 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -36,6 +36,8 @@ export TEXTDOMAINDIR='@localedir@' # file -i does not work on Mac OSX unless legacy mode is set export COMMAND_MODE='legacy' +# Ensure CDPATH doesn't screw with our cd calls +unset CDPATH myver='@PACKAGE_VERSION@' confdir='@sysconfdir@' diff --git a/scripts/pacman-optimize.sh.in b/scripts/pacman-optimize.sh.in index 47d8814a..8a4e7224 100644 --- a/scripts/pacman-optimize.sh.in +++ b/scripts/pacman-optimize.sh.in @@ -122,8 +122,7 @@ find "$dbroot" -type f | sort | xargs md5sum > "$workdir/pacsums.old" # step 2: tar it up msg "$(gettext "Tar'ing up %s...")" "$dbroot" -cd "$dbroot" -bsdtar -czf "$workdir/pacman-db.tar.gz" ./ +bsdtar -czf "$workdir/pacman-db.tar.gz" -C "$dbroot" ./ if (( $? )); then rm -rf "$workdir" die_r "$(gettext "Tar'ing up %s failed.")" "$dbroot" -- cgit v1.2.3-70-g09d2