diff --git a/bugs-fixed/pfile-overflow.awk b/bugs-fixed/pfile-overflow.awk new file mode 100644 index 0000000..b7d5379 --- /dev/null +++ b/bugs-fixed/pfile-overflow.awk @@ -0,0 +1 @@ +\ \ No newline at end of file diff --git a/bugs-fixed/pfile-overflow.ok b/bugs-fixed/pfile-overflow.ok new file mode 100644 index 0000000..a0de50f --- /dev/null +++ b/bugs-fixed/pfile-overflow.ok @@ -0,0 +1,4 @@ +../a.out: syntax error at source line 1 source file pfile-overflow.awk + context is + >>> <<< +../a.out: bailing out at source line 1 source file pfile-overflow.awk diff --git a/main.c b/main.c index 535f1aa..a3e0022 100644 --- a/main.c +++ b/main.c @@ -256,7 +256,7 @@ int pgetc(void) /* get 1 character from awk program */ char *cursource(void) /* current source file name */ { if (npfile > 0) - return pfile[curpfile]; + return pfile[curpfile < npfile ? curpfile : curpfile - 1]; else return NULL; }