Merge pull request #851 from Neilpang/dev

fix for performance of _h2b() function
pull/853/head
neil 8 years ago committed by GitHub
commit 4e20d89d9c

@ -444,19 +444,27 @@ if [ "$(printf '\x41')" != 'A' ]; then
fi
_h2b() {
if _exists xxd; then
xxd -r -p
return
fi
hex=$(cat)
i=1
j=2
_debug3 _URGLY_PRINTF "$_URGLY_PRINTF"
while true; do
if [ -z "$_URGLY_PRINTF" ]; then
_debug2 _URGLY_PRINTF "$_URGLY_PRINTF"
if [ -z "$_URGLY_PRINTF" ]; then
while true; do
h="$(printf "%s" "$hex" | cut -c $i-$j)"
if [ -z "$h" ]; then
break
fi
printf "\x$h%s"
else
i="$(_math "$i" + 2)"
j="$(_math "$j" + 2)"
done
else
while true; do
ic="$(printf "%s" "$hex" | cut -c $i)"
jc="$(printf "%s" "$hex" | cut -c $j)"
if [ -z "$ic$jc" ]; then
@ -465,12 +473,11 @@ _h2b() {
ic="$(_h_char_2_dec "$ic")"
jc="$(_h_char_2_dec "$jc")"
printf '\'"$(printf "%o" "$(_math "$ic" \* 16 + $jc)")""%s"
fi
i="$(_math "$i" + 2)"
j="$(_math "$j" + 2)"
i="$(_math "$i" + 2)"
j="$(_math "$j" + 2)"
done
fi
done
}
_is_solaris() {

Loading…
Cancel
Save