diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/stdio/vfprintf.c | 3 | 
1 files changed, 3 insertions, 0 deletions
diff --git a/src/stdio/vfprintf.c b/src/stdio/vfprintf.c index 45557951..2dbdb5e2 100644 --- a/src/stdio/vfprintf.c +++ b/src/stdio/vfprintf.c @@ -530,6 +530,9 @@ static int printf_core(FILE *f, const char *fmt, va_list *ap, union arg *nl_arg,  		if (!f) continue; +		/* Do not process any new directives once in error state. */ +		if (ferror(f)) return -1; +  		z = buf + sizeof(buf);  		prefix = "-+   0X0x";  		pl = 0;  | 
