From bb819d5ef6c6dc68da524de07991eae2a2c3a3af Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Fri, 15 Apr 2016 17:37:46 -0400 Subject: Use a better technique for dealing with empty arrays when `set -u`. https://news.ycombinator.com/item?id=11497636 --- src/chroot-tools/librechroot | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'src/chroot-tools') diff --git a/src/chroot-tools/librechroot b/src/chroot-tools/librechroot index 5ff9c99..ba722c7 100755 --- a/src/chroot-tools/librechroot +++ b/src/chroot-tools/librechroot @@ -54,18 +54,22 @@ arch-nspawn() { local copydir=$1; shift local cmd=("$@") - set +u # if an array is empty, it counts as unbound - "$_arch_nspawn" "${arch_nspawn_flags[@]}" "$copydir" "${sysd_nspawn_flags[@]}" -- "${cmd[@]}" - set -u + "$_arch_nspawn" \ + ${arch_nspawn_flags+"${arch_nspawn_flags[@]}"} \ + "$copydir" \ + ${sysd_nspawn_flags+"${sysd_nspawn_flags[@]}"} \ + -- \ + "${cmd[@]}" } # Usage: mkarchroot $copydir $pkgs... mkarchroot() { local copydir=$1; shift local pkgs=("$@") - set +u # if an array is empty, it counts as unbound - "$_mkarchroot" "${arch_nspawn_flags[@]}" "$copydir" "${pkgs[@]}" - set -u + "$_mkarchroot" \ + ${arch_nspawn_flags+"${arch_nspawn_flags[@]}"} \ + "$copydir" \ + "${pkgs[@]}" } # Usage: _makechrootpkg $function $arguments... -- cgit v1.2.3-54-g00ecf