Author: ru
Date: Thu Aug 11 10:29:10 2011
New Revision: 224776
URL: http://svn.freebsd.org/changeset/base/224776

Log:
  - Merged awk upstream that includes a fix for a bug exposed by kmod_syms.mk.
  - Provide a build aid for those who already have a buggy awk(1) installed.
  
  Approved by:  re (kib)

Modified:
  head/Makefile.inc1
  head/contrib/one-true-awk/FIXES
  head/contrib/one-true-awk/lib.c
  head/contrib/one-true-awk/main.c
Directory Properties:
  head/contrib/one-true-awk/   (props changed)

Modified: head/Makefile.inc1
==============================================================================
--- head/Makefile.inc1  Thu Aug 11 10:24:09 2011        (r224775)
+++ head/Makefile.inc1  Thu Aug 11 10:29:10 2011        (r224776)
@@ -1014,6 +1014,10 @@ _lex=            usr.bin/lex
 _yacc=         usr.bin/yacc
 .endif
 
+.if ${BOOTSTRAPPING} >= 900040 && ${BOOTSTRAPPING} < 900041
+_awk=          usr.bin/awk
+.endif
+
 .if ${BOOTSTRAPPING} < 700018
 _gensnmptree=  usr.sbin/bsnmpd/gensnmptree
 .endif
@@ -1052,6 +1056,7 @@ bootstrap-tools:
     ${_groff} \
     ${_ar} \
     ${_dtc} \
+    ${_awk} \
     usr.bin/lorder \
     usr.bin/makewhatis \
     ${_mklocale} \

Modified: head/contrib/one-true-awk/FIXES
==============================================================================
--- head/contrib/one-true-awk/FIXES     Thu Aug 11 10:24:09 2011        
(r224775)
+++ head/contrib/one-true-awk/FIXES     Thu Aug 11 10:29:10 2011        
(r224776)
@@ -25,6 +25,10 @@ THIS SOFTWARE.
 This file lists all bug fixes, changes, etc., made since the AWK book
 was sent to the printers in August, 1987.
 
+Aug 10, 2011:
+       another fix to avoid core dump with delete(ARGV); again, many thanks
+       to ruslan ermilov.
+
 Aug 7, 2011:
        split(s, a, //) now behaves the same as split(s, a, "")
 

Modified: head/contrib/one-true-awk/lib.c
==============================================================================
--- head/contrib/one-true-awk/lib.c     Thu Aug 11 10:24:09 2011        
(r224775)
+++ head/contrib/one-true-awk/lib.c     Thu Aug 11 10:29:10 2011        
(r224776)
@@ -89,8 +89,13 @@ void initgetrec(void)
        char *p;
 
        for (i = 1; i < *ARGC; i++) {
-               if (!isclvar(p = getargv(i))) { /* find 1st real filename */
-                       setsval(lookup("FILENAME", symtab), getargv(i));
+               p = getargv(i); /* find 1st real filename */
+               if (p == NULL || *p == '\0') {  /* deleted or zapped */
+                       argno++;
+                       continue;
+               }
+               if (!isclvar(p)) {
+                       setsval(lookup("FILENAME", symtab), p);
                        return;
                }
                setclvar(p);    /* a commandline assignment before filename */

Modified: head/contrib/one-true-awk/main.c
==============================================================================
--- head/contrib/one-true-awk/main.c    Thu Aug 11 10:24:09 2011        
(r224775)
+++ head/contrib/one-true-awk/main.c    Thu Aug 11 10:29:10 2011        
(r224776)
@@ -25,7 +25,7 @@ THIS SOFTWARE.
 #include <sys/cdefs.h>
 __FBSDID("$FreeBSD$");
 
-const char     *version = "version 20110807 (FreeBSD)";
+const char     *version = "version 20110810 (FreeBSD)";
 
 #define DEBUG
 #include <stdio.h>
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to