summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-01-29 18:45:59 +0000
committerZac Medico <zmedico@gentoo.org>2010-01-29 18:45:59 +0000
commit8bf13ba4beac0f9a4d799109eeae36923724e2cf (patch)
treeea6c25d98bfd5e8b880d77c8f54fc667871f76bd /bin
parent97ebf8f22457f51eb37ca3131adfbdfd75f24b1e (diff)
downloadportage-8bf13ba4beac0f9a4d799109eeae36923724e2cf.tar.gz
portage-8bf13ba4beac0f9a4d799109eeae36923724e2cf.tar.bz2
portage-8bf13ba4beac0f9a4d799109eeae36923724e2cf.zip
Fix it so an empty directory given to doins -r does not trigger failure.
(trunk r15172) svn path=/main/branches/2.1.7/; revision=15238
Diffstat (limited to 'bin')
-rwxr-xr-xbin/ebuild-helpers/doins13
1 files changed, 6 insertions, 7 deletions
diff --git a/bin/ebuild-helpers/doins b/bin/ebuild-helpers/doins
index cf4644770..db19750e3 100755
--- a/bin/ebuild-helpers/doins
+++ b/bin/ebuild-helpers/doins
@@ -63,16 +63,12 @@ _doins() {
}
_xdoins() {
- local -i success=0 failed=0
+ local -i failed=0
while read -d $'\0' x ; do
_doins "$x" "${x%/*}"
- if [[ $? -eq 0 ]] ; then
- ((success|=1))
- else
- ((failed|=1))
- fi
+ ((failed|=$?))
done
- [[ $failed -ne 0 || $success -eq 0 ]] && return 1 || return 0
+ return $failed
}
success=0
@@ -109,6 +105,9 @@ for x in "$@" ; do
find "$x_orig" -type d -exec dodir "${INSDESTTREE}/{}" \;
find "$x_orig" \( -type f -or -type l \) -print0 | _xdoins
if [[ ${PIPESTATUS[1]} -eq 0 ]] ; then
+ # NOTE: Even if only an empty directory is installed here, it
+ # still counts as success, since an empty directory given as
+ # an argument to doins -r should not trigger failure.
((success|=1))
else
((failed|=1))