diff options
author | Thomas Adam <thomas@xteddy.org> | 2020-05-24 16:01:20 +0100 |
---|---|---|
committer | Thomas Adam <thomas@xteddy.org> | 2020-05-24 16:01:20 +0100 |
commit | e16191dbfc8efa0ce51356911f03ad8d88d09e28 (patch) | |
tree | b89e35cbed8044e8b6aa42a39b7f8b730d93e7b7 /server-client.c | |
parent | aeefd585a090b6bf0d38888efde9e551a19dce07 (diff) | |
parent | 14a9fd58d56211f9ee1ee9347d135fc00e03d4bd (diff) | |
download | rtmux-e16191dbfc8efa0ce51356911f03ad8d88d09e28.tar.gz rtmux-e16191dbfc8efa0ce51356911f03ad8d88d09e28.tar.bz2 rtmux-e16191dbfc8efa0ce51356911f03ad8d88d09e28.zip |
Merge branch 'obsd-master'
Diffstat (limited to 'server-client.c')
-rw-r--r-- | server-client.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/server-client.c b/server-client.c index 2e474d77..3aae9eaa 100644 --- a/server-client.c +++ b/server-client.c @@ -299,7 +299,6 @@ server_client_lost(struct client *c) RB_REMOVE(client_windows, &c->windows, cw); free(cw); } - control_free_offsets(c); TAILQ_REMOVE(&clients, c, entry); log_debug("lost client %p", c); @@ -2346,15 +2345,18 @@ server_client_set_flags(struct client *c, const char *flags) if (not) next++; - if (strcmp(next, "no-output") == 0) - flag = CLIENT_CONTROL_NOOUTPUT; - else if (strcmp(next, "read-only") == 0) + flag = 0; + if (c->flags & CLIENT_CONTROL) { + if (strcmp(next, "no-output") == 0) + flag = CLIENT_CONTROL_NOOUTPUT; + } + if (strcmp(next, "read-only") == 0) flag = CLIENT_READONLY; else if (strcmp(next, "ignore-size") == 0) flag = CLIENT_IGNORESIZE; else if (strcmp(next, "active-pane") == 0) flag = CLIENT_ACTIVEPANE; - else + if (flag == 0) continue; log_debug("client %s set flag %s", c->name, next); |