Author: dteske
Date: Thu Mar  5 00:29:58 2015
New Revision: 279609
URL: https://svnweb.freebsd.org/changeset/base/279609

Log:
  MFC r273067:
  Fix awk(1) asorti() implementation to work when called in a loop.

Modified:
  stable/10/usr.sbin/bsdconfig/includes/includes
  stable/10/usr.sbin/bsdconfig/share/device.subr
  stable/10/usr.sbin/bsdconfig/share/packages/index.subr
Directory Properties:
  stable/10/   (props changed)

Modified: stable/10/usr.sbin/bsdconfig/includes/includes
==============================================================================
--- stable/10/usr.sbin/bsdconfig/includes/includes      Thu Mar  5 00:18:32 
2015        (r279608)
+++ stable/10/usr.sbin/bsdconfig/includes/includes      Thu Mar  5 00:29:58 
2015        (r279609)
@@ -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++)

Modified: stable/10/usr.sbin/bsdconfig/share/device.subr
==============================================================================
--- stable/10/usr.sbin/bsdconfig/share/device.subr      Thu Mar  5 00:18:32 
2015        (r279608)
+++ stable/10/usr.sbin/bsdconfig/share/device.subr      Thu Mar  5 00:29:58 
2015        (r279609)
@@ -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]

Modified: stable/10/usr.sbin/bsdconfig/share/packages/index.subr
==============================================================================
--- stable/10/usr.sbin/bsdconfig/share/packages/index.subr      Thu Mar  5 
00:18:32 2015        (r279608)
+++ stable/10/usr.sbin/bsdconfig/share/packages/index.subr      Thu Mar  5 
00:29:58 2015        (r279609)
@@ -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++)
_______________________________________________
[email protected] mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-stable-10
To unsubscribe, send any mail to "[email protected]"

Reply via email to