[pacman-dev] [PATCH] makepkg: compare paths using bash test
Allan McRae
allan at archlinux.org
Mon Oct 4 04:55:51 EDT 2010
Compare paths using bash's "-ef" rather than by string tests as this
takes symlinks into account. This will prevent issues similar to those
in FS#20922 if (e.g.) $PKGDEST is a symlink to $startdir.
Signed-off-by: Allan McRae <allan at archlinux.org>
---
scripts/makepkg.sh.in | 6 +++---
1 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index ccf4213..e9a82a9 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -1061,7 +1061,7 @@ create_package() {
exit 1 # TODO: error code
fi
- if (( ! ret )) && [[ "$PKGDEST" != "${startdir}" ]]; then
+ if (( ! ret )) && [[ "$PKGDEST" -ef "${startdir}" ]]; then
ln -sf "${pkg_file}" "${pkg_file/$PKGDEST/$startdir}"
ret=$?
fi
@@ -1142,7 +1142,7 @@ create_srcpackage() {
exit 1 # TODO: error code
fi
- if (( ! ret )) && [[ "$SRCPKGDEST" != "${startdir}" ]]; then
+ if (( ! ret )) && [[ "$SRCPKGDEST" -ef "${startdir}" ]]; then
ln -sf "${pkg_file}" "${pkg_file/$SRCPKGDEST/$startdir}"
ret=$?
fi
@@ -1704,7 +1704,7 @@ fi
if (( CLEANCACHE )); then
#fix flyspray feature request #5223
- if [[ -n $SRCDEST && $SRCDEST != $startdir ]]; then
+ if [[ -n $SRCDEST && $SRCDEST -ef "${startdir}" ]]; then
msg "$(gettext "Cleaning up ALL files from %s.")" "$SRCDEST"
echo -n "$(gettext " Are you sure you wish to do this? ")"
echo -n "$(gettext "[y/N]")"
--
1.7.3.1
More information about the pacman-dev
mailing list