Author: ru
Date: Sat Jan  9 23:04:24 2010
New Revision: 201945
URL: http://svn.freebsd.org/changeset/base/201945

Log:
  Vendor import of bwk's 26-Nov-2009 release.

Modified:
  vendor/one-true-awk/dist/FIXES
  vendor/one-true-awk/dist/b.c
  vendor/one-true-awk/dist/lib.c
  vendor/one-true-awk/dist/main.c
  vendor/one-true-awk/dist/makefile
  vendor/one-true-awk/dist/maketab.c
  vendor/one-true-awk/dist/proctab.c
  vendor/one-true-awk/dist/proto.h
  vendor/one-true-awk/dist/run.c

Modified: vendor/one-true-awk/dist/FIXES
==============================================================================
--- vendor/one-true-awk/dist/FIXES      Sat Jan  9 23:02:49 2010        
(r201944)
+++ vendor/one-true-awk/dist/FIXES      Sat Jan  9 23:04:24 2010        
(r201945)
@@ -25,6 +25,23 @@ THIS SOFTWARE.
 This file lists all bug fixes, changes, etc., made since the AWK book
 was sent to the printers in August, 1987.
 
+Nov 26, 2009:
+       fixed a long-standing issue with when FS takes effect.  a
+       change to FS is now noticed immediately for subsequent splits.
+
+       changed the name getline() to awkgetline() to avoid yet another
+       name conflict somewhere.
+
+Feb 11, 2009:
+       temporarily for now defined HAS_ISBLANK, since that seems to
+       be the best way through the thicket.  isblank arrived in C99,
+       but seems to be arriving at different systems at different
+       times.
+
+Oct 8, 2008:
+       fixed typo in b.c that set tmpvec wrongly.  no one had ever
+       run into the problem, apparently.  thanks to alistair crooks.
+
 Oct 23, 2007:
        minor fix in lib.c: increase inputFS to 100, change malloc
        for fields to n+1.  

Modified: vendor/one-true-awk/dist/b.c
==============================================================================
--- vendor/one-true-awk/dist/b.c        Sat Jan  9 23:02:49 2010        
(r201944)
+++ vendor/one-true-awk/dist/b.c        Sat Jan  9 23:04:24 2010        
(r201945)
@@ -731,6 +731,7 @@ Node *unary(Node *np)
  * to nelson beebe for the suggestion; let's see if it works everywhere.
  */
 
+/* #define HAS_ISBLANK */
 #ifndef HAS_ISBLANK
 
 int (isblank)(int c)
@@ -876,7 +877,7 @@ int cgoto(fa *f, int s, int c)
                                        if (q[j] >= maxsetvec) {
                                                maxsetvec *= 4;
                                                setvec = (int *) 
realloc(setvec, maxsetvec * sizeof(int));
-                                               tmpset = (int *) 
realloc(setvec, maxsetvec * sizeof(int));
+                                               tmpset = (int *) 
realloc(tmpset, maxsetvec * sizeof(int));
                                                if (setvec == 0 || tmpset == 0)
                                                        overflo("cgoto 
overflow");
                                        }

Modified: vendor/one-true-awk/dist/lib.c
==============================================================================
--- vendor/one-true-awk/dist/lib.c      Sat Jan  9 23:02:49 2010        
(r201944)
+++ vendor/one-true-awk/dist/lib.c      Sat Jan  9 23:04:24 2010        
(r201945)
@@ -274,6 +274,7 @@ void fldbld(void)   /* create fields from 
        }
        fr = fields;
        i = 0;  /* number of fields accumulated here */
+       strcpy(inputFS, *FS);
        if (strlen(inputFS) > 1) {      /* it's a regular expression */
                i = refldbld(r, inputFS);
        } else if ((sep = *inputFS) == ' ') {   /* default whitespace */

Modified: vendor/one-true-awk/dist/main.c
==============================================================================
--- vendor/one-true-awk/dist/main.c     Sat Jan  9 23:02:49 2010        
(r201944)
+++ vendor/one-true-awk/dist/main.c     Sat Jan  9 23:04:24 2010        
(r201945)
@@ -22,7 +22,7 @@ ARISING OUT OF OR IN CONNECTION WITH THE
 THIS SOFTWARE.
 ****************************************************************/
 
-const char     *version = "version 20070501";
+const char     *version = "version 20091126";
 
 #define DEBUG
 #include <stdio.h>

Modified: vendor/one-true-awk/dist/makefile
==============================================================================
--- vendor/one-true-awk/dist/makefile   Sat Jan  9 23:02:49 2010        
(r201944)
+++ vendor/one-true-awk/dist/makefile   Sat Jan  9 23:04:24 2010        
(r201945)
@@ -31,7 +31,6 @@ CC = gcc -fprofile-arcs -ftest-coverage 
 CC = gcc -Wall -g
 CC = cc
 CC = gcc -O4
-CC = gcc -Wall -g
 
 
 YACC = bison -y

Modified: vendor/one-true-awk/dist/maketab.c
==============================================================================
--- vendor/one-true-awk/dist/maketab.c  Sat Jan  9 23:02:49 2010        
(r201944)
+++ vendor/one-true-awk/dist/maketab.c  Sat Jan  9 23:04:24 2010        
(r201945)
@@ -102,7 +102,7 @@ struct xx
        { CALL, "call", "call" },
        { ARG, "arg", "arg" },
        { VARNF, "getnf", "NF" },
-       { GETLINE, "getline", "getline" },
+       { GETLINE, "awkgetline", "getline" },
        { 0, "", "" },
 };
 

Modified: vendor/one-true-awk/dist/proctab.c
==============================================================================
--- vendor/one-true-awk/dist/proctab.c  Sat Jan  9 23:02:49 2010        
(r201944)
+++ vendor/one-true-awk/dist/proctab.c  Sat Jan  9 23:04:24 2010        
(r201945)
@@ -180,7 +180,7 @@ Cell *(*proctab[93])(Node **, int) = {
        nullproc,       /* NUMBER */
        nullproc,       /* STRING */
        nullproc,       /* REGEXPR */
-       getline,        /* GETLINE */
+       awkgetline,     /* GETLINE */
        substr, /* SUBSTR */
        split,  /* SPLIT */
        jump,   /* RETURN */

Modified: vendor/one-true-awk/dist/proto.h
==============================================================================
--- vendor/one-true-awk/dist/proto.h    Sat Jan  9 23:02:49 2010        
(r201944)
+++ vendor/one-true-awk/dist/proto.h    Sat Jan  9 23:04:24 2010        
(r201945)
@@ -149,7 +149,7 @@ extern      Cell    *call(Node **, int);
 extern Cell    *copycell(Cell *);
 extern Cell    *arg(Node **, int);
 extern Cell    *jump(Node **, int);
-extern Cell    *getline(Node **, int);
+extern Cell    *awkgetline(Node **, int);
 extern Cell    *getnf(Node **, int);
 extern Cell    *array(Node **, int);
 extern Cell    *awkdelete(Node **, int);

Modified: vendor/one-true-awk/dist/run.c
==============================================================================
--- vendor/one-true-awk/dist/run.c      Sat Jan  9 23:02:49 2010        
(r201944)
+++ vendor/one-true-awk/dist/run.c      Sat Jan  9 23:04:24 2010        
(r201945)
@@ -388,7 +388,7 @@ Cell *jump(Node **a, int n) /* break, co
        return 0;       /* not reached */
 }
 
-Cell *getline(Node **a, int n) /* get next line from specific input */
+Cell *awkgetline(Node **a, int n)      /* get next line from specific input */
 {              /* a[0] is variable, a[1] is operator, a[2] is filename */
        Cell *r, *x;
        extern Cell **fldtab;
@@ -1159,11 +1159,11 @@ Cell *cat(Node **a, int q)      /* a[0] cat a
                        x->sval, y->sval);
        strcpy(s, x->sval);
        strcpy(s+n1, y->sval);
+       tempfree(x);
        tempfree(y);
        z = gettemp();
        z->sval = s;
        z->tval = STR;
-       tempfree(x);
        return(z);
 }
 
_______________________________________________
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