# HG changeset patch # User Franz Glasner # Date 1728507371 -7200 # Node ID 32580e25df78098d11fb9c7d03c0b72ae2c55011 # Parent 6787e216285e6601c8d487000b558f09f64ea5a4 farray.sh: Remove most of the use of "_farr_quote_for_eval()" by using other "eval" evluation order diff -r 6787e216285e -r 32580e25df78 share/local-bsdtools/farray.sh --- a/share/local-bsdtools/farray.sh Wed Oct 09 22:29:46 2024 +0200 +++ b/share/local-bsdtools/farray.sh Wed Oct 09 22:56:11 2024 +0200 @@ -764,7 +764,7 @@ # backslashes and single quotes. # _farr_acquire_object "${__farr_newval}" - eval ${__farr_gvrname}_${__farr_len_1}="$(_farr_quote_for_eval "${__farr_newval}")" + eval ${__farr_gvrname}_${__farr_len_1}=\"\$\{__farr_newval\}\" # the implementation below line does not escape properly # eval ${__farr_gvrname}_${__farr_len_1}="\"${__farr_value}\"" @@ -808,13 +808,13 @@ # replace a value at an existing index eval __farr_old_value=\"\$\{${__farr_gvrname}_${__farr_index}\}\" _farr_release_object "${__farr_old_value}" - eval ${__farr_gvrname}_${__farr_index}="$(_farr_quote_for_eval "${__farr_value}")" + eval ${__farr_gvrname}_${__farr_index}=\"\$\{__farr_value\}\" else __farr_len_1=$((__farr_len + 1)) if [ ${__farr_index} -eq ${__farr_len_1} ]; then _farr_acquire_object "${__farr_value}" # append value - eval ${__farr_gvrname}_${__farr_len_1}="$(_farr_quote_for_eval "${__farr_value}")" + eval ${__farr_gvrname}_${__farr_len_1}=\"\$\{__farr_value\}\" # and set new length eval ${__farr_gvrname}__=${__farr_len_1} else @@ -2156,7 +2156,7 @@ eval __farr_old_value=\"\$\{${__farr_valname}_${__farr_idx}\}\" _farr_release_object "${__farr_old_value}" _farr_acquire_object "${__farr_value}" - eval ${__farr_valname}_${__farr_idx}="$(_farr_quote_for_eval "${__farr_value}")" + eval ${__farr_valname}_${__farr_idx}=\"\$\{__farr_value\}\" return 0 fi else @@ -2171,9 +2171,9 @@ # __farr_len=${__farr_idx} # ... the key/value pairs to storage - eval ${__farr_keyname}_${__farr_len}="$(_farr_quote_for_eval "${__farr_key}")" + eval ${__farr_keyname}_${__farr_len}=\"\$\{__farr_key\}\" _farr_acquire_object "${__farr_value}" - eval ${__farr_valname}_${__farr_len}="$(_farr_quote_for_eval "${__farr_value}")" + eval ${__farr_valname}_${__farr_len}=\"\$\{__farr_value\}\" # ... the new length to the storage eval ${__farr_objname}__=${__farr_len} shift 2 @@ -2214,9 +2214,9 @@ # __farr_len=$((__farr_len + 1)) # ... the key/value pairs to storage - eval ${__farr_keyname}_${__farr_len}="$(_farr_quote_for_eval "${__farr_key}")" + eval ${__farr_keyname}_${__farr_len}=\"\$\{__farr_key\}\" _farr_acquire_object "${__farr_value}" - eval ${__farr_valname}_${__farr_len}="$(_farr_quote_for_eval "${__farr_value}")" + eval ${__farr_valname}_${__farr_len}=\"\$\{__farr_value\}\" # ... the new length to the storage eval ${__farr_objname}__=${__farr_len} shift 2 @@ -2278,9 +2278,9 @@ # __farr_len=${__farr_idx} # ... the key/value pairs to storage - eval ${__farr_keyname}_${__farr_len}="$(_farr_quote_for_eval "${__farr_key}")" + eval ${__farr_keyname}_${__farr_len}=\"\$\{__farr_key\}\" _farr_acquire_object "${__farr_value}" - eval ${__farr_valname}_${__farr_len}="$(_farr_quote_for_eval "${__farr_value}")" + eval ${__farr_valname}_${__farr_len}=\"\$\{__farr_value\}\" # ... the new length eval ${__farr_objname}__=${__farr_len} shift 2