From 2ecbb0307d13b2645b0025dc849527ed49631d4c Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Mon, 25 Jan 1999 00:34:26 +0000 Subject: Exit nonzero upon failed write to stdout. --- src/ansi2knr.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'src/ansi2knr.c') diff --git a/src/ansi2knr.c b/src/ansi2knr.c index ac9b32907..442a96b2f 100644 --- a/src/ansi2knr.c +++ b/src/ansi2knr.c @@ -1,6 +1,6 @@ /* Copyright (C) 1989, 1997, 1998 Aladdin Enterprises. All rights reserved. */ -/*$Id: ansi2knr.c,v 1.9 1999/01/13 05:40:42 meyering Exp $*/ +/*$Id: ansi2knr.c,v 1.10 1999/01/25 00:34:26 meyering Exp $*/ /* Convert ANSI C function definitions to K&R ("traditional C") syntax */ /* @@ -190,6 +190,7 @@ main(argc, argv) { FILE *in = stdin; FILE *out = stdout; char *filename = 0; + char *program_name = argv[0]; #define bufsize 5000 /* arbitrary size */ char *buf; char *line; @@ -300,8 +301,13 @@ wl: fputs(buf, out); if ( line != buf ) fputs(buf, out); free(buf); - if ( out != stdout ) - fclose(out); + + if (ferror (out) || fclose (out) != 0) + { + fprintf (stderr, "%s: write error\n", program_name); + exit (1); + } + if ( in != stdin ) fclose(in); return 0; -- cgit v1.2.3-54-g00ecf