svn commit: r305365 - head/contrib/one-true-awk

Andrey A. Chernov ache at FreeBSD.org
Sat Sep 3 23:04:57 UTC 2016


Author: ache
Date: Sat Sep  3 23:04:56 2016
New Revision: 305365
URL: https://svnweb.freebsd.org/changeset/base/305365

Log:
  The bug:
  $ echo x | awk '/[[:cntrl:]]/'
  x
  
  The NUL character in cntrl class truncates the pattern, and an empty
  pattern matches anything. The patch skips NUL as a quick fix.
  
  PR:     195792
  Submitted by:   kdrakehp at zoho.com
  Approved by:    bwk at cs.princeton.edu (the author)
  MFC after:      3 days

Modified:
  head/contrib/one-true-awk/b.c

Modified: head/contrib/one-true-awk/b.c
==============================================================================
--- head/contrib/one-true-awk/b.c	Sat Sep  3 21:41:29 2016	(r305364)
+++ head/contrib/one-true-awk/b.c	Sat Sep  3 23:04:56 2016	(r305365)
@@ -841,7 +841,7 @@ int relex(void)		/* lexical analyzer for
 				if (cc->cc_name != NULL && prestr[1 + cc->cc_namelen] == ':' &&
 				    prestr[2 + cc->cc_namelen] == ']') {
 					prestr += cc->cc_namelen + 3;
-					for (i = 0; i < NCHARS; i++) {
+					for (i = 1; i < NCHARS; i++) {
 						if (!adjbuf((char **) &buf, &bufsz, bp-buf+1, 100, (char **) &bp, "relex2"))
 						    FATAL("out of space for reg expr %.10s...", lastre);
 						if (cc->cc_func(i)) {


More information about the svn-src-all mailing list