summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAllan McRae <allan@archlinux.org>2012-02-09 23:20:13 +0100
committerDan McGee <dan@archlinux.org>2012-02-11 21:52:54 +0100
commit9b1ab3d76713d99a11d8da2204557856d59bd3a5 (patch)
treebfa099a5beee52a191ed1bf879c82b3f762d9423
parentea32924c626b828b3752c021362a6e0e7f79885c (diff)
downloadpacman-9b1ab3d76713d99a11d8da2204557856d59bd3a5.tar.gz
pacman-9b1ab3d76713d99a11d8da2204557856d59bd3a5.tar.xz
makepkg: deal with mercurial exit codes
From mercurial-2.1, "hg pull" returns 1 when there are no updates. Catch the return code and either pull the update or return an error as appropriate. Signed-off-by: Allan McRae <allan@archlinux.org> Signed-off-by: Dan McGee <dan@archlinux.org>
-rw-r--r--scripts/makepkg.sh.in9
1 files changed, 7 insertions, 2 deletions
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 6a1f3141..a10dc5d3 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -1730,8 +1730,13 @@ devel_check() {
msg "$(gettext "Determining latest %s revision...")" 'hg'
if [[ -d ./src/$_hgrepo ]] ; then
cd ./src/$_hgrepo
- hg pull
- hg update
+ local ret=0
+ hg pull || ret=$?
+ if (( ! ret )); then
+ hg update
+ elif (( ret != 1 )); then
+ return 1
+ fi
else
[[ ! -d ./src/ ]] && mkdir ./src/
hg clone $_hgroot/$_hgrepo ./src/$_hgrepo