diff options
author | Ruslan Ermilov <ru@FreeBSD.org> | 2011-05-06 14:08:24 +0000 |
---|---|---|
committer | Ruslan Ermilov <ru@FreeBSD.org> | 2011-05-06 14:08:24 +0000 |
commit | e2f76e526c9828f75cb69d51857e9efd1ed0684f (patch) | |
tree | 3bd96c6c930a25429b3c0cf7413942cb20dd8d99 | |
parent | f11de2916976d54dd9f4f804dda1c290783aaa90 (diff) |
Vendor import of bwk's 6-May-2011 release.vendor/one-true-awk/20110506
Notes
Notes:
svn path=/vendor/one-true-awk/dist/; revision=221530
svn path=/vendor/one-true-awk/20110506/; revision=221531; tag=vendor/one-true-awk/20110506
-rw-r--r-- | FIXES | 5 | ||||
-rw-r--r-- | b.c | 4 | ||||
-rw-r--r-- | main.c | 21 |
3 files changed, 22 insertions, 8 deletions
@@ -25,6 +25,11 @@ THIS SOFTWARE. This file lists all bug fixes, changes, etc., made since the AWK book was sent to the printers in August, 1987. +May 6, 2011: + added #ifdef for isblank. + now allows -ffoo as well as -f foo arguments. + (thanks, ruslan) + May 1, 2011: after advice from todd miller, kevin lo, ruslan ermilov, and arnold robbins, changed srand() to return the previous @@ -748,7 +748,11 @@ struct charclass { } charclasses[] = { { "alnum", 5, isalnum }, { "alpha", 5, isalpha }, +#ifndef HAS_ISBLANK { "blank", 5, isspace }, /* was isblank */ +#else + { "blank", 5, isblank }, +#endif { "cntrl", 5, iscntrl }, { "digit", 5, isdigit }, { "graph", 5, isgraph }, @@ -22,7 +22,7 @@ ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ****************************************************************/ -const char *version = "version 20110501"; +const char *version = "version 20110506"; #define DEBUG #include <stdio.h> @@ -91,13 +91,18 @@ int main(int argc, char *argv[]) safe = 1; break; case 'f': /* next argument is program filename */ - argc--; - argv++; - if (argc <= 1) - FATAL("no program filename"); - if (npfile >= MAX_PFILE - 1) - FATAL("too many -f options"); - pfile[npfile++] = argv[1]; + if (argv[1][2] != 0) { /* arg is -fsomething */ + if (npfile >= MAX_PFILE - 1) + FATAL("too many -f options"); + pfile[npfile++] = &argv[1][2]; + } else { /* arg is -f something */ + argc--; argv++; + if (argc <= 1) + FATAL("no program filename"); + if (npfile >= MAX_PFILE - 1) + FATAL("too many -f options"); + pfile[npfile++] = argv[1]; + } break; case 'F': /* set field separator */ if (argv[1][2] != 0) { /* arg is -Fsomething */ |