From: Ulrich Müller Date: Fri, 16 Feb 2018 06:47:46 +0000 (+0100) Subject: eutils.eclass: More reliable return status for e*_clean functions. X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=437fa331a8d9ed4259949e3731b2eab330b69f2a;p=gentoo.git eutils.eclass: More reliable return status for e*_clean functions. In ecvs_clean, combine the two find commands into one, so that the exit status of the first one won't be ignored. Also use find -exec rather then find | xargs, so we don't have to check the exit status of all commands in the pipeline. --- diff --git a/eclass/eutils.eclass b/eclass/eutils.eclass index 8bbd561015ad..0a5bf3853582 100644 --- a/eclass/eutils.eclass +++ b/eclass/eutils.eclass @@ -44,8 +44,8 @@ fi # internal CVS directories. Defaults to $PWD. ecvs_clean() { [[ $# -eq 0 ]] && set -- . - find "$@" -type d -name 'CVS' -prune -print0 | xargs -0 rm -rf - find "$@" -type f -name '.cvs*' -print0 | xargs -0 rm -rf + find "$@" '(' -type d -name 'CVS' -prune -o -type f -name '.cvs*' ')' \ + -exec rm -rf '{}' + } # @FUNCTION: esvn_clean @@ -55,7 +55,7 @@ ecvs_clean() { # internal Subversion directories. Defaults to $PWD. esvn_clean() { [[ $# -eq 0 ]] && set -- . - find "$@" -type d -name '.svn' -prune -print0 | xargs -0 rm -rf + find "$@" -type d -name '.svn' -prune -exec rm -rf '{}' + } # @FUNCTION: egit_clean @@ -65,7 +65,7 @@ esvn_clean() { # contains internal Git directories. Defaults to $PWD. egit_clean() { [[ $# -eq 0 ]] && set -- . - find "$@" -type d -name '.git*' -prune -print0 | xargs -0 rm -rf + find "$@" -type d -name '.git*' -prune -exec rm -rf '{}' + } # @FUNCTION: emktemp