summaryrefslogtreecommitdiffstats
path: root/usr.sbin/bsdconfig/share
diff options
context:
space:
mode:
authordteske <dteske@FreeBSD.org>2015-03-05 00:29:58 +0000
committerdteske <dteske@FreeBSD.org>2015-03-05 00:29:58 +0000
commita1b0091ca7d685209dc41d66a718f2b0ed66f397 (patch)
tree34a5508697662badc5bc170b4006dd1f6302e8cb /usr.sbin/bsdconfig/share
parentd83b961fc89abbe10456ec55724bfa50007fc4db (diff)
downloadFreeBSD-src-a1b0091ca7d685209dc41d66a718f2b0ed66f397.zip
FreeBSD-src-a1b0091ca7d685209dc41d66a718f2b0ed66f397.tar.gz
MFC r273067:
Fix awk(1) asorti() implementation to work when called in a loop.
Diffstat (limited to 'usr.sbin/bsdconfig/share')
-rw-r--r--usr.sbin/bsdconfig/share/device.subr1
-rw-r--r--usr.sbin/bsdconfig/share/packages/index.subr4
2 files changed, 4 insertions, 1 deletions
diff --git a/usr.sbin/bsdconfig/share/device.subr b/usr.sbin/bsdconfig/share/device.subr
index d93cd9b..4e60d84 100644
--- a/usr.sbin/bsdconfig/share/device.subr
+++ b/usr.sbin/bsdconfig/share/device.subr
@@ -1118,6 +1118,7 @@ f_device_sort_by_awk='
# -v prop="property"
function asorti(src, dest)
{
+ k = nitems = 0
for (i in src) dest[++nitems] = i
for (i = 1; i <= nitems; k = i++) {
idx = dest[i]
diff --git a/usr.sbin/bsdconfig/share/packages/index.subr b/usr.sbin/bsdconfig/share/packages/index.subr
index 35ef0da..41934d4 100644
--- a/usr.sbin/bsdconfig/share/packages/index.subr
+++ b/usr.sbin/bsdconfig/share/packages/index.subr
@@ -243,8 +243,10 @@ f_index_read()
eval "$( debug= f_getvar "$var_to_get" | awk -F'|' '
function asorti(src, dest)
{
+ k = nitems = 0
+
# Copy src indices to dest and calculate array length
- nitems = 0; for (i in src) dest[++nitems] = i
+ for (i in src) dest[++nitems] = i
# Sort the array of indices (dest) using insertion sort method
for (i = 1; i <= nitems; k = i++)
OpenPOWER on IntegriCloud