Bug in dracut-functions.sh@225(print_vars)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I stubled upon the following bug (dracut --verbose output):

> ...
> //usr/lib/dracut/modules.d/10i18n/module-setup.sh@132(install_local_i18n): 
EXT_KEYMAPS='backspace keypad euro2'
> ...
> /usr/lib/dracut/dracut-functions.sh@224(print_vars): eval printf -v _value 
%s '$EXT_KEYMAPS'
> //usr/lib/dracut/dracut-functions.sh@224(print_vars): printf -v _value %s 
backspace keypad euro2
> /usr/lib/dracut/dracut-functions.sh@225(print_vars): [[ -n 
backspacekeypadeuro2 ]]
> /usr/lib/dracut/dracut-functions.sh@225(print_vars): printf '%s=\"%s\"\n' 
EXT_KEYMAPS backspacekeypadeuro2

the "eval" line of print_vars
needs to re replaced by
> eval printf -v _value "%s" \""\$$_var"\"

the modified function is then:

> # Function prints global variables in format name=value line by line.
> # $@ = list of global variables' name
> print_vars() {
>     local _var _value
> 
>     for _var in "$@"
>     do
>         eval printf -v _value "%s" \""\$$_var"\"
>         [[ ${_value} ]] && printf '%s="%s"\n' "$_var" "$_value"
>     done
> }

this produces the correct result.
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux