diff options
author | dteske <dteske@FreeBSD.org> | 2014-10-14 03:11:46 +0000 |
---|---|---|
committer | dteske <dteske@FreeBSD.org> | 2014-10-14 03:11:46 +0000 |
commit | a06acedacb7eb33cefef42e80530aed4cd2b9805 (patch) | |
tree | b92c931dd52bbc05faf906f2a97e784b1c72d644 /usr.sbin | |
parent | c075956fba0f30bf19d01c1dfff754573b8d16cf (diff) | |
download | FreeBSD-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-x | usr.sbin/bsdconfig/includes/includes | 4 | ||||
-rw-r--r-- | usr.sbin/bsdconfig/share/device.subr | 1 | ||||
-rw-r--r-- | usr.sbin/bsdconfig/share/packages/index.subr | 4 |
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++) |