From 9bb030c5d8189f42eef3a0a881a361ce811414b0 Mon Sep 17 00:00:00 2001 From: Harald Hoyer Date: Wed, 13 Apr 2016 13:57:03 +0200 Subject: [PATCH] dracut-init.sh: beautify instmods() --- dracut-init.sh | 31 ++++++++++++++++++++++++++++--- 1 file changed, 28 insertions(+), 3 deletions(-) diff --git a/dracut-init.sh b/dracut-init.sh index e26d97a..8d1d9fa 100644 --- a/dracut-init.sh +++ b/dracut-init.sh @@ -1001,22 +1001,47 @@ instmods() { local _optional="-o" local _silent local _ret + [[ $no_kernel = yes ]] && return + if [[ $1 = '-c' ]]; then - _optional="" + unset _optional shift fi if [[ $1 = '-s' ]]; then _silent=1 shift fi + if (($# == 0)); then read -r -d '' -a args set -- "${args[@]}" fi - $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${loginstall:+-L "$loginstall"} ${hostonly:+-H} ${omit_drivers:+-N "$omit_drivers"} ${_optional:+-o} ${_silent:+--silent} ${srcmods:+--kerneldir "$srcmods"} -m "$@" + + $DRACUT_INSTALL \ + ${initdir:+-D "$initdir"} \ + ${loginstall:+-L "$loginstall"} \ + ${hostonly:+-H} \ + ${omit_drivers:+-N "$omit_drivers"} \ + ${srcmods:+--kerneldir "$srcmods"} \ + ${_optional:+-o} \ + ${_silent:+--silent} \ + -m "$@" _ret=$? - (($_ret != 0)) && [[ -z "$_silent" ]] && derror FAILED: $DRACUT_INSTALL ${initdir:+-D "$initdir"} ${loginstall:+-L "$loginstall"} ${hostonly:+-H} ${omit_drivers:+-N "$omit_drivers"} ${_optional:+-o} ${_silent:+--silent} ${srcmods:+--kerneldir "$srcmods"} -m "$@" || : + + if (($_ret != 0)) && [[ -z "$_silent" ]]; then + derror "FAILED: " \ + $DRACUT_INSTALL \ + ${initdir:+-D "$initdir"} \ + ${loginstall:+-L "$loginstall"} \ + ${hostonly:+-H} \ + ${omit_drivers:+-N "$omit_drivers"} \ + ${srcmods:+--kerneldir "$srcmods"} \ + ${_optional:+-o} \ + ${_silent:+--silent} \ + -m "$@" + fi + [[ "$optional" ]] && return 0 return $_ret }