shithub: trueawk

Download patch

ref: feb247a852c0a068dc8c23e0e683a5af075fff60
parent: a2a41a8e359dca5295c43dc2c2408094b96c3e0c
author: Todd C. Miller <Todd.Miller@sudo.ws>
date: Thu Dec 3 05:30:36 EST 2020

Don't print extra newlines on error before awk starts parsing. (#97)

If awk prints an error message while when compile_time is still set
to ERROR_PRINTING, don't try to print the context since there is
none.  This can happen due to a problem with, e.g., unknown command
line options.

--- a/lib.c
+++ b/lib.c
@@ -669,12 +669,11 @@
 			fprintf(stderr, " source line number %d", curnode->lineno);
 		else if (lineno)
 			fprintf(stderr, " source line number %d", lineno);
+		if (compile_time == COMPILING && cursource() != NULL)
+			fprintf(stderr, " source file %s", cursource());
+		fprintf(stderr, "\n");
+		eprint();
 	}
-
-	if (compile_time == COMPILING && cursource() != NULL)
-		fprintf(stderr, " source file %s", cursource());
-	fprintf(stderr, "\n");
-	eprint();
 }
 
 void eprint(void)	/* try to print context around error */
--