Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/freebsd/poudriere.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src/share
diff options
context:
space:
mode:
authorBryan Drewery <bryan@shatow.net>2014-04-19 04:05:07 +0400
committerBryan Drewery <bryan@shatow.net>2014-04-19 04:05:07 +0400
commitdf914777d824fd6fe21c077e7a61556d8beb601b (patch)
treed48c3bd049c8bd2efc7f445bc66ed25aee44e185 /src/share
parent75467995c4ff73f44c33c10f0982a5399974b9a8 (diff)
Leftovers: Fix losing some changes
Reported by: antoine MFH
Diffstat (limited to 'src/share')
-rwxr-xr-xsrc/share/poudriere/common.sh19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/share/poudriere/common.sh b/src/share/poudriere/common.sh
index 57222db2..ad3c4d2f 100755
--- a/src/share/poudriere/common.sh
+++ b/src/share/poudriere/common.sh
@@ -1311,6 +1311,16 @@ check_leftovers() {
changed=
while :; do
read_again=0
+
+ # Handle leftover read from changed paths
+ case ${l} in
+ *extra|*missing|extra:*|*changed|*:*)
+ if [ -n "${changed}" ]; then
+ echo "${changed}"
+ changed=
+ fi
+ ;;
+ esac
case ${l} in
*extra)
if [ -d ${mnt}/${l% *} ]; then
@@ -1335,7 +1345,7 @@ check_leftovers() {
fi
;;
*:*)
- changed="M ${mnt}/${l%:*}"
+ changed="M ${mnt}/${l%:*} ${l#*:}"
read_again=1
;;
*)
@@ -1343,11 +1353,8 @@ check_leftovers() {
read_again=1
;;
esac
- if [ ${read_again} -eq 1 ]; then
- # Need to read again to find all changes
- read l || break
- continue
- fi
+ # Need to read again to find all changes
+ [ ${read_again} -eq 1 ] && read l && continue
[ -n "${changed}" ] && echo "${changed}"
break
done