From 9824112cfa187648b200b16dda1884ff54f64e52 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 11 Jul 2005 18:21:54 +0000 Subject: [PATCH] (cksum): Avoid setmode; use POSIX-specified routines instead. --- src/cksum.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/cksum.c b/src/cksum.c index 0499379ccd..0dce68ccad 100644 --- a/src/cksum.c +++ b/src/cksum.c @@ -199,10 +199,12 @@ cksum (const char *file, bool print_name) { fp = stdin; have_read_stdin = true; + if (O_BINARY && ! isatty (STDIN_FILENO)) + freopen (NULL, "rb", stdin); } else { - fp = fopen (file, "r"); + fp = fopen (file, (O_BINARY ? "rb" : "r")); if (fp == NULL) { error (0, errno, "%s", file); @@ -210,9 +212,6 @@ cksum (const char *file, bool print_name) } } - /* Read input in BINARY mode, unless it is a console device. */ - SET_BINARY (fileno (fp)); - while ((bytes_read = fread (buf, 1, BUFLEN, fp)) > 0) { unsigned char *cp = buf; -- 2.47.3