diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-01-29 18:45:59 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-01-29 18:45:59 +0000 |
commit | 8bf13ba4beac0f9a4d799109eeae36923724e2cf (patch) | |
tree | ea6c25d98bfd5e8b880d77c8f54fc667871f76bd /bin | |
parent | 97ebf8f22457f51eb37ca3131adfbdfd75f24b1e (diff) | |
download | portage-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-x | bin/ebuild-helpers/doins | 13 |
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)) |