From 57a5d2a4dbee673e38a01583b6b29ad4030324c5 Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Tue, 23 Sep 2003 12:12:25 +0000 Subject: (fold_file): Save errno after input error, to report proper errno value. --- src/fold.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'src/fold.c') diff --git a/src/fold.c b/src/fold.c index 293766072..517be282a 100644 --- a/src/fold.c +++ b/src/fold.c @@ -126,6 +126,7 @@ fold_file (char *filename, int width) int offset_out = 0; /* Index in `line_out' for next char. */ static char *line_out = NULL; static int allocated_out = 0; + int saved_errno; if (STREQ (filename, "-")) { @@ -209,12 +210,14 @@ fold_file (char *filename, int width) line_out[offset_out++] = c; } + saved_errno = errno; + if (offset_out) fwrite (line_out, sizeof (char), (size_t) offset_out, stdout); if (ferror (istream)) { - error (0, errno, "%s", filename); + error (0, saved_errno, "%s", filename); if (!STREQ (filename, "-")) fclose (istream); return 1; -- cgit v1.2.3-54-g00ecf