diff --git a/slabtop.c b/slabtop.c index 17c1fcca..16863fe2 100644 --- a/slabtop.c +++ b/slabtop.c @@ -414,7 +414,7 @@ int main(int argc, char *argv[]) tv.tv_sec = delay; tv.tv_usec = 0; if (select(STDOUT_FILENO, &readfds, NULL, NULL, &tv) > 0) { - if (read(0, &c, 1) != 1) + if (read(STDIN_FILENO, &c, 1) != 1) break; parse_input(c); } diff --git a/vmstat.c b/vmstat.c index 9fca4ef4..809915a7 100644 --- a/vmstat.c +++ b/vmstat.c @@ -694,7 +694,7 @@ static int winhi(void) struct winsize win; int rows = 24; - if (ioctl(1, TIOCGWINSZ, &win) != -1 && win.ws_row > 0) + if (ioctl(STDOUT_FILENO, TIOCGWINSZ, &win) != -1 && 0 < win.ws_row) rows = win.ws_row; return rows; diff --git a/watch.c b/watch.c index 6ce174ba..d759c64b 100644 --- a/watch.c +++ b/watch.c @@ -220,7 +220,7 @@ static void get_terminal_size(void) } } if (incoming_cols < 0 || incoming_rows < 0) { - if (ioctl(2, TIOCGWINSZ, &w) == 0) { + if (ioctl(STDERR_FILENO, TIOCGWINSZ, &w) == 0) { if (incoming_rows < 0 && w.ws_row > 0) { height = w.ws_row; snprintf(env_row_buf, sizeof env_row_buf,