diff options
Diffstat (limited to 'newlib/libc/posix/isatty.c')
-rw-r--r-- | newlib/libc/posix/isatty.c | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/newlib/libc/posix/isatty.c b/newlib/libc/posix/isatty.c index afd5ec85e..2732ca2a0 100644 --- a/newlib/libc/posix/isatty.c +++ b/newlib/libc/posix/isatty.c @@ -1,10 +1,17 @@ /* isatty.c */ -#include <unistd.h> -#include <reent.h> +/* Dumb implementation so programs will at least run. */ + +#include <sys/stat.h> int _DEFUN(isatty, (fd), int fd) { - return _isatty (fd); + struct stat buf; + + if (fstat (fd, &buf) < 0) + return 0; + if (S_ISCHR (buf.st_mode)) + return 1; + return 0; } |