[pacman-dev] [PATCH 1/3] makepkg: use bash 4.4 to localize `set` without explicitly saving/restoring

Allan McRae allan at archlinux.org
Wed Aug 29 04:54:27 UTC 2018


On 14/08/18 11:20, Eli Schwartz wrote:
> Signed-off-by: Eli Schwartz <eschwartz at archlinux.org>
> ---
>  scripts/makepkg.sh.in | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
> index 4024f477..bb8332c6 100644
> --- a/scripts/makepkg.sh.in
> +++ b/scripts/makepkg.sh.in
> @@ -418,13 +418,14 @@ prepare_buildenv() {
>  }
>  
>  run_function_safe() {
> -	local restoretrap restoreset restoreshopt
> +	local restoretrap restoreshopt
>  
>  	# we don't set any special shopts of our own, but we don't want the user to
>  	# muck with our environment.
>  	restoreshopt=$(shopt -p)
>  
> -	restoreset=$(shopt -o -p)
> +	# localize sets, sadly this does not work for shopt
> +	local -

My understanding is this does not quite do the same thing...   "local -"
only save the single-letter shell options.  There are set options that
do not have a single letter variants (although they are unlikely to be
used...).


More information about the pacman-dev mailing list