On Fri, May 27, 2011 at 3:09 PM, Dave Reisner <[email protected]> wrote:
> Signed-off-by: Dave Reisner <[email protected]>
> ---
> Sorry to sneak this in -- I should have noticed it earlier. This is simply a
> continuation of my crusade against eval, which would happily go to town with
> word splitting.
>
> As this conflicts with Eric's patch, one of us will need to refactor slightly.
>
> dave
>
>  rc.d |   12 ++++++------
>  1 files changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/rc.d b/rc.d
> index 55871b1..af29574 100755
> --- a/rc.d
> +++ b/rc.d
> @@ -46,13 +46,13 @@ case $1 in
>                shift
>                # set same environment variables as init
>                runlevel=$(/sbin/runlevel)
> -               ENV="PATH='/bin:/usr/bin:/sbin:/usr/sbin'"
> -               ENV+=" PREVLEVEL='${runlevel:0:1}'"
> -               ENV+=" RUNLEVEL='${runlevel:2:1}'"
> -               ENV+=" CONSOLE='${CONSOLE:-/dev/console}'"
> -               ENV+=" TERM='${TERM}'"
> +               ENV=("PATH=/bin:/usr/bin:/sbin:/usr/sbin"
> +                       "PREVLEVEL=${runlevel%% *}"
> +                       "RUNLEVEL=${runlevel##* }"
> +                       "CONSOLE=${CONSOLE:-/dev/console}"
> +                       "TERM=$TERM")
>                for i; do
> -                       [[ -x "/etc/rc.d/$i" ]] && cd / && eval /usr/bin/env 
> -i $ENV "/etc/rc.d/$i" "$action"
> +                       [[ -x "/etc/rc.d/$i" ]] && cd / && /usr/bin/env -i 
> "${ENV[@]}" "/etc/rc.d/$i" "$action"
>                        (( ret += !! $? ))  # clamp exit value to 0/1
>                done
>  esac

looks good !

Thanks.

-- 
Sébastien Luttringer
www.seblu.net

Reply via email to