62 lines
1.6 KiB
Plaintext
62 lines
1.6 KiB
Plaintext
---
|
|
ps/global.c | 13 ++++++++++---
|
|
1 file changed, 10 insertions(+), 3 deletions(-)
|
|
|
|
--- src/ps/global.c
|
|
+++ src/ps/global.c 2022-03-29 09:31:24.242140877 +0000
|
|
@@ -264,8 +264,11 @@ static void set_screen_size(void){
|
|
screen_cols = ws.ws_col; // hmmm, NetBSD subtracts 1
|
|
screen_rows = ws.ws_row;
|
|
|
|
- // TODO: delete this line
|
|
- if(!isatty(STDOUT_FILENO)) screen_cols = OUTBUF_SIZE;
|
|
+ if(!isatty(STDOUT_FILENO)){
|
|
+ screen_cols = OUTBUF_SIZE;
|
|
+ screen_rows = OUTBUF_SIZE;
|
|
+ if (personality&PER_UNIX_COLS) return; // SysV/UNIX98 based personality
|
|
+ }
|
|
|
|
columns = getenv("COLUMNS");
|
|
if(columns && *columns){
|
|
@@ -407,6 +410,7 @@ static const char *set_personality(void)
|
|
return NULL;
|
|
|
|
case_aix:
|
|
+ personality |= PER_UNIX_COLS;
|
|
bsd_j_format = "FB_j";
|
|
bsd_l_format = "FB_l";
|
|
/* bsd_s_format not used */
|
|
@@ -434,6 +438,7 @@ static const char *set_personality(void)
|
|
|
|
case_sunos4:
|
|
personality = PER_NO_DEFAULT_g;
|
|
+ personality |= PER_UNIX_COLS;
|
|
prefer_bsd_defaults = 1;
|
|
bsd_j_format = "FB_j";
|
|
bsd_l_format = "FB_l";
|
|
@@ -459,12 +464,14 @@ static const char *set_personality(void)
|
|
case_hp:
|
|
case_hpux:
|
|
personality = PER_HPUX_x;
|
|
+ personality |= PER_UNIX_COLS;
|
|
return NULL;
|
|
|
|
case_svr4:
|
|
case_sysv:
|
|
case_sco:
|
|
personality = PER_SVR4_x;
|
|
+ personality |= PER_UNIX_COLS;
|
|
return NULL;
|
|
|
|
case_posix:
|
|
@@ -505,8 +512,8 @@ void reset_global(void){
|
|
}
|
|
// --- <pids> interface --------------------------------------------------
|
|
|
|
- set_screen_size();
|
|
set_personality();
|
|
+ set_screen_size();
|
|
|
|
all_processes = 0;
|
|
bsd_c_option = 0;
|