From 9cf3dc9a259cadc80e6d3840c658ef1d5f7c94a4 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Sat, 12 Aug 2017 21:34:06 +0200 Subject: awk: allow string as exit status --- sys/src/cmd/awk/main.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'sys/src/cmd/awk/main.c') diff --git a/sys/src/cmd/awk/main.c b/sys/src/cmd/awk/main.c index 2695de56d..e4244e333 100644 --- a/sys/src/cmd/awk/main.c +++ b/sys/src/cmd/awk/main.c @@ -40,7 +40,6 @@ int dbg = 0; char *cmdname; /* gets argv[0] for error messages */ extern Biobuf *yyin; /* lex input file */ char *lexprog; /* points to program argument if it exists */ -extern int errorflag; /* non-zero if any syntax errors; set by yyerror */ int compile_time = 2; /* for error printing: */ /* 2 = cmdline, 1 = compile, 0 = running */ @@ -161,15 +160,13 @@ void main(int argc, char *argv[]) yyparse(); if (fs) *FS = qstring(fs, '\0'); - dprint( ("errorflag=%d\n", errorflag) ); - if (errorflag == 0) { + dprint( ("exitstatus=%s\n", exitstatus) ); + if (exitstatus == nil) { compile_time = 0; run(winner); } else bracecheck(); - if(errorflag) - exits("error"); - exits(0); + exits(exitstatus); } int pgetc(void) /* get 1 character from awk program */ -- cgit v1.2.3