Index: src/cmp.c =================================================================== RCS file: /sources/diffutils/diffutils/src/cmp.c,v retrieving revision 1.47 diff -u -r1.47 cmp.c --- src/cmp.c 19 Jul 2007 17:45:28 -0000 1.47 +++ src/cmp.c 11 Apr 2009 11:56:21 -0000 @@ -284,7 +284,11 @@ { file_desc[f1] = STDIN_FILENO; if (O_BINARY && ! isatty (STDIN_FILENO)) - freopen (NULL, "rb", stdin); + { + /* Try to change stdin to binary mode */ + if (!freopen (NULL, "rb", stdin)) + error (EXIT_TROUBLE, errno, "%s", _("standard input")); + } } else file_desc[f1] = open (file[f1], O_RDONLY | O_BINARY, 0);