suppress null termination when fgets reads EOF with no data

the C standard requires that "the contents of the array remain
unchanged" in this case.

this patch also changes the behavior on read errors, but in that case
"the array contents are indeterminate", so the application cannot
inspect them anyway.
This commit is contained in:
Rich Felker 2014-09-04 21:37:13 -04:00
parent 49d2c8c6bc
commit 402611c3ba
1 changed files with 1 additions and 1 deletions

View File

@ -34,7 +34,7 @@ char *fgets(char *restrict s, int n, FILE *restrict f)
n--;
if ((*p++ = c) == '\n') break;
}
*p = 0;
if (s) *p = 0;
FUNLOCK(f);