When closing, don't flush input streams

They don't need it.
This commit is contained in:
Miguel Pineiro Jr 2021-12-16 20:07:10 -05:00
parent 99f6a43296
commit 7816d47dc8
1 changed files with 4 additions and 2 deletions

6
run.c
View File

@ -1872,7 +1872,8 @@ Cell *closefile(Node **a, int n)
for (i = 0; i < nfiles; i++) { for (i = 0; i < nfiles; i++) {
if (!files[i].fname || strcmp(x->sval, files[i].fname) != 0) if (!files[i].fname || strcmp(x->sval, files[i].fname) != 0)
continue; continue;
fflush(files[i].fp); if (files[i].mode == GT || files[i].mode == '|')
fflush(files[i].fp);
if (ferror(files[i].fp)) { if (ferror(files[i].fp)) {
if ((files[i].mode == GT && files[i].fp != stderr) if ((files[i].mode == GT && files[i].fp != stderr)
|| files[i].mode == '|') || files[i].mode == '|')
@ -1909,7 +1910,8 @@ void closeall(void)
for (i = 0; i < nfiles; i++) { for (i = 0; i < nfiles; i++) {
if (! files[i].fp) if (! files[i].fp)
continue; continue;
fflush(files[i].fp); if (files[i].mode == GT || files[i].mode == '|')
fflush(files[i].fp);
if (ferror(files[i].fp)) { if (ferror(files[i].fp)) {
if ((files[i].mode == GT && files[i].fp != stderr) if ((files[i].mode == GT && files[i].fp != stderr)
|| files[i].mode == '|') || files[i].mode == '|')