From 07fc234838d4bae0ddaa98ead2233ba2c98a1979 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Mon, 11 Jul 2005 18:27:10 +0000 Subject: [PATCH] (main): Avoid setmode; use POSIX-specified routines instead. --- src/tr.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/tr.c b/src/tr.c index edbd2c7863..ffeec20f1b 100644 --- a/src/tr.c +++ b/src/tr.c @@ -1761,7 +1761,10 @@ main (int argc, char **argv) /* Use binary I/O, since `tr' is sometimes used to transliterate non-printable characters, or characters which are stripped away by text-mode reads (like CR and ^Z). */ - SET_BINARY2 (STDIN_FILENO, STDOUT_FILENO); + if (O_BINARY && ! isatty (STDIN_FILENO)) + freopen (NULL, "rb", stdin); + if (O_BINARY && ! isatty (STDOUT_FILENO)) + freopen (NULL, "wb", stdout); if (squeeze_repeats && non_option_args == 1) { -- 2.47.3