mirror of
https://github.com/tmux/tmux.git
synced 2024-11-07 03:28:48 +00:00
Merge branch 'obsd-master'
This commit is contained in:
commit
4efba0bf9f
@ -170,7 +170,7 @@ cmd_wait_for_wait(struct cmdq_item *item, const char *name,
|
|||||||
struct client *c = item->client;
|
struct client *c = item->client;
|
||||||
struct wait_item *wi;
|
struct wait_item *wi;
|
||||||
|
|
||||||
if (c == NULL || c->session != NULL) {
|
if (c == NULL) {
|
||||||
cmdq_error(item, "not able to wait");
|
cmdq_error(item, "not able to wait");
|
||||||
return (CMD_RETURN_ERROR);
|
return (CMD_RETURN_ERROR);
|
||||||
}
|
}
|
||||||
@ -198,7 +198,7 @@ cmd_wait_for_lock(struct cmdq_item *item, const char *name,
|
|||||||
{
|
{
|
||||||
struct wait_item *wi;
|
struct wait_item *wi;
|
||||||
|
|
||||||
if (item->client == NULL || item->client->session != NULL) {
|
if (item->client == NULL) {
|
||||||
cmdq_error(item, "not able to lock");
|
cmdq_error(item, "not able to lock");
|
||||||
return (CMD_RETURN_ERROR);
|
return (CMD_RETURN_ERROR);
|
||||||
}
|
}
|
||||||
|
@ -1020,6 +1020,7 @@ table_changed:
|
|||||||
}
|
}
|
||||||
flags = c->flags;
|
flags = c->flags;
|
||||||
|
|
||||||
|
try_again:
|
||||||
/* Log key table. */
|
/* Log key table. */
|
||||||
if (wp == NULL)
|
if (wp == NULL)
|
||||||
log_debug("key table %s (no pane)", table->name);
|
log_debug("key table %s (no pane)", table->name);
|
||||||
@ -1028,7 +1029,6 @@ table_changed:
|
|||||||
if (c->flags & CLIENT_REPEAT)
|
if (c->flags & CLIENT_REPEAT)
|
||||||
log_debug("currently repeating");
|
log_debug("currently repeating");
|
||||||
|
|
||||||
try_again:
|
|
||||||
/* Try to see if there is a key binding in the current table. */
|
/* Try to see if there is a key binding in the current table. */
|
||||||
bd = key_bindings_get(table, key0);
|
bd = key_bindings_get(table, key0);
|
||||||
if (bd != NULL) {
|
if (bd != NULL) {
|
||||||
@ -1039,10 +1039,12 @@ try_again:
|
|||||||
*/
|
*/
|
||||||
if ((c->flags & CLIENT_REPEAT) &&
|
if ((c->flags & CLIENT_REPEAT) &&
|
||||||
(~bd->flags & KEY_BINDING_REPEAT)) {
|
(~bd->flags & KEY_BINDING_REPEAT)) {
|
||||||
|
log_debug("found in key table %s (not repeating)",
|
||||||
|
table->name);
|
||||||
server_client_set_key_table(c, NULL);
|
server_client_set_key_table(c, NULL);
|
||||||
|
first = table = c->keytable;
|
||||||
c->flags &= ~CLIENT_REPEAT;
|
c->flags &= ~CLIENT_REPEAT;
|
||||||
server_status_client(c);
|
server_status_client(c);
|
||||||
table = c->keytable;
|
|
||||||
goto table_changed;
|
goto table_changed;
|
||||||
}
|
}
|
||||||
log_debug("found in key table %s", table->name);
|
log_debug("found in key table %s", table->name);
|
||||||
@ -1092,10 +1094,13 @@ try_again:
|
|||||||
log_debug("not found in key table %s", table->name);
|
log_debug("not found in key table %s", table->name);
|
||||||
if (!server_client_is_default_key_table(c, table) ||
|
if (!server_client_is_default_key_table(c, table) ||
|
||||||
(c->flags & CLIENT_REPEAT)) {
|
(c->flags & CLIENT_REPEAT)) {
|
||||||
|
log_debug("trying in root table");
|
||||||
server_client_set_key_table(c, NULL);
|
server_client_set_key_table(c, NULL);
|
||||||
|
table = c->keytable;
|
||||||
|
if (c->flags & CLIENT_REPEAT)
|
||||||
|
first = table;
|
||||||
c->flags &= ~CLIENT_REPEAT;
|
c->flags &= ~CLIENT_REPEAT;
|
||||||
server_status_client(c);
|
server_status_client(c);
|
||||||
table = c->keytable;
|
|
||||||
goto table_changed;
|
goto table_changed;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
2
tmux.1
2
tmux.1
@ -4535,8 +4535,6 @@ is used, the channel is locked and any clients that try to lock the same
|
|||||||
channel are made to wait until the channel is unlocked with
|
channel are made to wait until the channel is unlocked with
|
||||||
.Ic wait-for
|
.Ic wait-for
|
||||||
.Fl U .
|
.Fl U .
|
||||||
This command only works from outside
|
|
||||||
.Nm .
|
|
||||||
.El
|
.El
|
||||||
.Sh TERMINFO EXTENSIONS
|
.Sh TERMINFO EXTENSIONS
|
||||||
.Nm
|
.Nm
|
||||||
|
Loading…
Reference in New Issue
Block a user