mirror of
https://github.com/tmux/tmux.git
synced 2024-12-13 01:48:47 +00:00
Don't allow locked or suspended clients to limit the size of active clients.
This commit is contained in:
parent
fecf8dc44e
commit
1764ef81ef
@ -45,6 +45,7 @@ int
|
|||||||
cmd_lock_server_exec(unused struct cmd *self, unused struct cmd_ctx *ctx)
|
cmd_lock_server_exec(unused struct cmd *self, unused struct cmd_ctx *ctx)
|
||||||
{
|
{
|
||||||
server_lock();
|
server_lock();
|
||||||
|
recalculate_sizes();
|
||||||
|
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
2
resize.c
2
resize.c
@ -60,7 +60,7 @@ recalculate_sizes(void)
|
|||||||
ssx = ssy = UINT_MAX;
|
ssx = ssy = UINT_MAX;
|
||||||
for (j = 0; j < ARRAY_LENGTH(&clients); j++) {
|
for (j = 0; j < ARRAY_LENGTH(&clients); j++) {
|
||||||
c = ARRAY_ITEM(&clients, j);
|
c = ARRAY_ITEM(&clients, j);
|
||||||
if (c == NULL)
|
if (c == NULL || c->flags & CLIENT_SUSPENDED)
|
||||||
continue;
|
continue;
|
||||||
if (c->session == s) {
|
if (c->session == s) {
|
||||||
if (c->tty.sx < ssx)
|
if (c->tty.sx < ssx)
|
||||||
|
@ -104,6 +104,7 @@ server_msg_dispatch(struct client *c)
|
|||||||
c->flags &= ~CLIENT_SUSPENDED;
|
c->flags &= ~CLIENT_SUSPENDED;
|
||||||
tty_start_tty(&c->tty);
|
tty_start_tty(&c->tty);
|
||||||
server_redraw_client(c);
|
server_redraw_client(c);
|
||||||
|
recalculate_sizes();
|
||||||
server_activity = time(NULL);
|
server_activity = time(NULL);
|
||||||
break;
|
break;
|
||||||
case MSG_ENVIRON:
|
case MSG_ENVIRON:
|
||||||
|
4
server.c
4
server.c
@ -1194,8 +1194,10 @@ server_second_timers(void)
|
|||||||
t = time(NULL);
|
t = time(NULL);
|
||||||
|
|
||||||
xtimeout = options_get_number(&global_s_options, "lock-after-time");
|
xtimeout = options_get_number(&global_s_options, "lock-after-time");
|
||||||
if (xtimeout > 0 && t > server_activity + xtimeout)
|
if (xtimeout > 0 && t > server_activity + xtimeout) {
|
||||||
server_lock();
|
server_lock();
|
||||||
|
recalculate_sizes();
|
||||||
|
}
|
||||||
|
|
||||||
for (i = 0; i < ARRAY_LENGTH(&windows); i++) {
|
for (i = 0; i < ARRAY_LENGTH(&windows); i++) {
|
||||||
w = ARRAY_ITEM(&windows, i);
|
w = ARRAY_ITEM(&windows, i);
|
||||||
|
Loading…
Reference in New Issue
Block a user