X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/d33cb3ae09c2bed6df2ef950f5aa14ceba428d8b..386642761d0480036b7af5588d1b3de65de20e4c:/src/files.c diff --git a/src/files.c b/src/files.c index dd3ec818..da4c36b1 100644 --- a/src/files.c +++ b/src/files.c @@ -111,7 +111,7 @@ xfopen (const char *name, const char *mode) ptr = fopen (name, mode); if (!ptr) - error (2, errno, _("cannot open file `%s'"), name); + error (EXIT_FAILURE, errno, _("cannot open file `%s'"), name); return ptr; } @@ -120,19 +120,17 @@ xfopen (const char *name, const char *mode) | Try to close file PTR, and print an error message if fails. | `-------------------------------------------------------------*/ -int +void xfclose (FILE *ptr) { - int result; - if (ptr == NULL) - return 0; + return; - result = fclose (ptr); - if (result == EOF) - error (2, errno, _("cannot close file")); + if (ferror (ptr)) + error (EXIT_FAILURE, 0, _("I/O error")); - return result; + if (fclose (ptr) != 0) + error (EXIT_FAILURE, errno, _("cannot close file")); }