=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/tmux/status.c,v retrieving revision 1.181 retrieving revision 1.182 diff -c -r1.181 -r1.182 *** src/usr.bin/tmux/status.c 2018/08/29 09:50:32 1.181 --- src/usr.bin/tmux/status.c 2018/10/18 08:38:01 1.182 *************** *** 1,4 **** ! /* $OpenBSD: status.c,v 1.181 2018/08/29 09:50:32 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott --- 1,4 ---- ! /* $OpenBSD: status.c,v 1.182 2018/10/18 08:38:01 nicm Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott *************** *** 214,230 **** return (-1); if (s->statusat != 1) return (s->statusat); ! return (c->tty.sy - status_line_size(s)); } ! /* ! * Get size of status line for session. 0 means off. Note that status line may ! * be forced off for an individual client if it is too small (the ! * CLIENT_STATUSOFF flag is set for this). ! */ u_int ! status_line_size(struct session *s) { if (s->statusat == -1) return (0); return (1); --- 214,230 ---- return (-1); if (s->statusat != 1) return (s->statusat); ! return (c->tty.sy - status_line_size(c)); } ! /* Get size of status line for client's session. 0 means off. */ u_int ! status_line_size(struct client *c) { + struct session *s = c->session; + + if (c->flags & CLIENT_STATUSOFF) + return (0); if (s->statusat == -1) return (0); return (1); *************** *** 324,330 **** } /* No status line? */ ! lines = status_line_size(s); if (c->tty.sy == 0 || lines == 0) return (1); left = right = NULL; --- 324,330 ---- } /* No status line? */ ! lines = status_line_size(c); if (c->tty.sy == 0 || lines == 0) return (1); left = right = NULL; *************** *** 663,669 **** return (0); memcpy(&old_status, &c->status.status, sizeof old_status); ! lines = status_line_size(c->session); if (lines <= 1) { lines = 1; screen_init(&c->status.status, c->tty.sx, 1, 0); --- 663,669 ---- return (0); memcpy(&old_status, &c->status.status, sizeof old_status); ! lines = status_line_size(c); if (lines <= 1) { lines = 1; screen_init(&c->status.status, c->tty.sx, 1, 0); *************** *** 819,825 **** return (0); memcpy(&old_status, &c->status.status, sizeof old_status); ! lines = status_line_size(c->session); if (lines <= 1) { lines = 1; screen_init(&c->status.status, c->tty.sx, 1, 0); --- 819,825 ---- return (0); memcpy(&old_status, &c->status.status, sizeof old_status); ! lines = status_line_size(c); if (lines <= 1) { lines = 1; screen_init(&c->status.status, c->tty.sx, 1, 0);