diff options
Diffstat (limited to 'pkgs/os-specific/linux/musl/tty-more-precise-errors.patch')
-rw-r--r-- | pkgs/os-specific/linux/musl/tty-more-precise-errors.patch | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/pkgs/os-specific/linux/musl/tty-more-precise-errors.patch b/pkgs/os-specific/linux/musl/tty-more-precise-errors.patch deleted file mode 100644 index 06b108559e4..00000000000 --- a/pkgs/os-specific/linux/musl/tty-more-precise-errors.patch +++ /dev/null @@ -1,51 +0,0 @@ -From c84971995b3a6d5118f9357c040572f4c78bcd55 Mon Sep 17 00:00:00 2001 -From: Benjamin Peterson <benjamin@python.org> -Date: Thu, 13 Sep 2018 14:23:42 -0700 -Subject: improve error handling of ttyname_r and isatty - -POSIX allows ttyname(_r) and isatty to return EBADF if passed file -descriptor is invalid. - -maintainer's note: these are optional ("may fail") errors, but it's -non-conforming for ttyname_r to return ENOTTY when it failed for a -different reason. ---- - src/unistd/isatty.c | 6 +++++- - src/unistd/ttyname_r.c | 2 +- - 2 files changed, 6 insertions(+), 2 deletions(-) - -diff --git a/src/unistd/isatty.c b/src/unistd/isatty.c -index c8badaf5..75a9c186 100644 ---- a/src/unistd/isatty.c -+++ b/src/unistd/isatty.c -@@ -1,9 +1,13 @@ - #include <unistd.h> -+#include <errno.h> - #include <sys/ioctl.h> - #include "syscall.h" - - int isatty(int fd) - { - struct winsize wsz; -- return !__syscall(SYS_ioctl, fd, TIOCGWINSZ, &wsz); -+ unsigned long r = syscall(SYS_ioctl, fd, TIOCGWINSZ, &wsz); -+ if (r == 0) return 1; -+ if (errno != EBADF) errno = ENOTTY; -+ return 0; - } -diff --git a/src/unistd/ttyname_r.c b/src/unistd/ttyname_r.c -index cb364c29..82acb75e 100644 ---- a/src/unistd/ttyname_r.c -+++ b/src/unistd/ttyname_r.c -@@ -9,7 +9,7 @@ int ttyname_r(int fd, char *name, size_t size) - char procname[sizeof "/proc/self/fd/" + 3*sizeof(int) + 2]; - ssize_t l; - -- if (!isatty(fd)) return ENOTTY; -+ if (!isatty(fd)) return errno; - - __procfdname(procname, fd); - l = readlink(procname, name, size); --- -cgit v1.2.1 - |