summaryrefslogtreecommitdiffstats
path: root/usr.sbin
diff options
context:
space:
mode:
authordteske <dteske@FreeBSD.org>2014-10-14 03:11:46 +0000
committerdteske <dteske@FreeBSD.org>2014-10-14 03:11:46 +0000
commita06acedacb7eb33cefef42e80530aed4cd2b9805 (patch)
treeb92c931dd52bbc05faf906f2a97e784b1c72d644 /usr.sbin
parentc075956fba0f30bf19d01c1dfff754573b8d16cf (diff)
downloadFreeBSD-src-a06acedacb7eb33cefef42e80530aed4cd2b9805.zip
FreeBSD-src-a06acedacb7eb33cefef42e80530aed4cd2b9805.tar.gz
Fix awk(1) asorti() implementation to work when called in a loop.
MFC after: 3 days X-MFC-to: stable/10, stable/9
Diffstat (limited to 'usr.sbin')
-rwxr-xr-xusr.sbin/bsdconfig/includes/includes4
-rw-r--r--usr.sbin/bsdconfig/share/device.subr1
-rw-r--r--usr.sbin/bsdconfig/share/packages/index.subr4
3 files changed, 7 insertions, 2 deletions
diff --git a/usr.sbin/bsdconfig/includes/includes b/usr.sbin/bsdconfig/includes/includes
index d831649..7bd5312 100755
--- a/usr.sbin/bsdconfig/includes/includes
+++ b/usr.sbin/bsdconfig/includes/includes
@@ -71,8 +71,10 @@ show_include()
-v show_desc=${SHOW_DESC:-0} '
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++)
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