From: Paul Eggert Date: Mon, 11 Apr 2005 20:08:11 +0000 (+0000) Subject: (digest_file, digest_check): X-Git-Tag: CPPI-1_12~1030 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=e972b27d0566c5c3f093763c12841718b7a5bd57;p=thirdparty%2Fcoreutils.git (digest_file, digest_check): Don't assume that fopen does not return stdin. --- diff --git a/src/md5sum.c b/src/md5sum.c index d12048a4af..400f675fad 100644 --- a/src/md5sum.c +++ b/src/md5sum.c @@ -335,8 +335,9 @@ digest_file (const char *filename, bool binary, unsigned char *bin_result, { FILE *fp; int err; + bool is_stdin = STREQ (filename, "-"); - if (STREQ (filename, "-")) + if (is_stdin) { have_read_stdin = true; fp = stdin; @@ -370,7 +371,7 @@ digest_file (const char *filename, bool binary, unsigned char *bin_result, return false; } - if (fp != stdin && fclose (fp) == EOF) + if (!is_stdin && fclose (fp) != 0) { error (0, errno, "%s", filename); return false; @@ -390,8 +391,9 @@ digest_check (const char *checkfile_name, int (*digest_stream) (FILE *, void *)) uintmax_t line_number; char *line; size_t line_chars_allocated; + bool is_stdin = STREQ (checkfile_name, "-"); - if (STREQ (checkfile_name, "-")) + if (is_stdin) { have_read_stdin = true; checkfile_name = _("standard input"); @@ -505,7 +507,7 @@ digest_check (const char *checkfile_name, int (*digest_stream) (FILE *, void *)) return false; } - if (checkfile_stream != stdin && fclose (checkfile_stream) == EOF) + if (!is_stdin && fclose (checkfile_stream) != 0) { error (0, errno, "%s", checkfile_name); return false;