Do not check the client readonly flag when there is no client, GitHub issue 1980.

pull/1982/head
nicm 2019-11-20 11:42:51 +00:00
parent 350a434939
commit 3c312a9150
1 changed files with 9 additions and 5 deletions

View File

@ -508,12 +508,16 @@ key_bindings_dispatch(struct key_binding *bd, struct cmdq_item *item,
struct cmdq_item *new_item;
int readonly;
readonly = 1;
TAILQ_FOREACH(cmd, &bd->cmdlist->list, qentry) {
if (!(cmd->entry->flags & CMD_READONLY))
readonly = 0;
if (c == NULL || (~c->flags & CLIENT_READONLY))
readonly = 1;
else {
readonly = 1;
TAILQ_FOREACH(cmd, &bd->cmdlist->list, qentry) {
if (~cmd->entry->flags & CMD_READONLY)
readonly = 0;
}
}
if (!readonly && (c->flags & CLIENT_READONLY))
if (!readonly)
new_item = cmdq_get_callback(key_bindings_read_only, NULL);
else {
new_item = cmdq_get_command(bd->cmdlist, fs, m, 0);