aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--coreutils/ls.c2
-rw-r--r--libbb/get_terminal_width_height.c2
-rw-r--r--util-linux/more.c4
3 files changed, 5 insertions, 3 deletions
diff --git a/coreutils/ls.c b/coreutils/ls.c
index f7fa9a110..8b5065ac6 100644
--- a/coreutils/ls.c
+++ b/coreutils/ls.c
@@ -982,7 +982,7 @@ extern int ls_main(int argc, char **argv)
#ifdef CONFIG_FEATURE_AUTOWIDTH
/* Obtain the terminal width. */
- get_terminal_width_height(0, &terminal_width, NULL);
+ get_terminal_width_height(fileno(stdout), &terminal_width, NULL);
/* Go one less... */
terminal_width--;
#endif
diff --git a/libbb/get_terminal_width_height.c b/libbb/get_terminal_width_height.c
index ef90463fb..7a1af6dc1 100644
--- a/libbb/get_terminal_width_height.c
+++ b/libbb/get_terminal_width_height.c
@@ -36,7 +36,7 @@ void get_terminal_width_height(int fd, int *width, int *height)
{
struct winsize win = { 0, 0, 0, 0 };
#ifdef CONFIG_FEATURE_AUTOWIDTH
- if (ioctl(0, TIOCGWINSZ, &win) != 0) {
+ if (ioctl(fd, TIOCGWINSZ, &win) != 0) {
win.ws_row = 24;
win.ws_col = 80;
}
diff --git a/util-linux/more.c b/util-linux/more.c
index d7b7ce22f..04b29de17 100644
--- a/util-linux/more.c
+++ b/util-linux/more.c
@@ -67,6 +67,7 @@ extern int more_main(int argc, char **argv)
int please_display_more_prompt = -1;
struct stat st;
FILE *file;
+ FILE *in_file = stdin;
int len, page_height;
argc--;
@@ -78,6 +79,7 @@ extern int more_main(int argc, char **argv)
cin = fopen(CURRENT_TTY, "r");
if (!cin)
cin = bb_xfopen(CONSOLE_DEV, "r");
+ in_file = cin;
please_display_more_prompt = 0;
#ifdef CONFIG_FEATURE_USE_TERMIOS
getTermSettings(fileno(cin), &initial_settings);
@@ -108,7 +110,7 @@ extern int more_main(int argc, char **argv)
if(please_display_more_prompt>0)
please_display_more_prompt = 0;
- get_terminal_width_height(0, &terminal_width, &terminal_height);
+ get_terminal_width_height(fileno(in_file), &terminal_width, &terminal_height);
if (terminal_height > 4)
terminal_height -= 2;
if (terminal_width > 0)