summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2019-11-20 12:01:23 +0000
committerThomas Adam <thomas@xteddy.org>2019-11-20 12:01:23 +0000
commit82d0d856758ef5c0cd6dbc0d605a91c5fc91e397 (patch)
tree72124870c6206a7a4672e26347cd92d9c3833693
parent0ed96c4609f887b37ee0ee4a017c24c361452320 (diff)
parent3c312a915094fe566c323aee35387d144cdeb6b2 (diff)
Merge branch 'obsd-master'
-rw-r--r--key-bindings.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/key-bindings.c b/key-bindings.c
index c90924a5..a2534b44 100644
--- a/key-bindings.c
+++ b/key-bindings.c
@@ -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);