aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornicm <nicm>2021-08-23 11:48:21 +0000
committernicm <nicm>2021-08-23 11:48:21 +0000
commit03b83a5a34a4257be9029e1f5195dcddcd531caa (patch)
tree42d487b8be05e6e2341fb80fb6dbaad925eb79f1
parent1f0c0914c75980069c6f78872bdee5ceb0ef64e2 (diff)
downloadrtmux-03b83a5a34a4257be9029e1f5195dcddcd531caa.tar.gz
rtmux-03b83a5a34a4257be9029e1f5195dcddcd531caa.tar.bz2
rtmux-03b83a5a34a4257be9029e1f5195dcddcd531caa.zip
Key bindings steal a reference to the command instead of adding their
own, it was correct not to add a reference when parsing, but the bind-key then needs to add one.
-rw-r--r--cmd-bind-key.c1
-rw-r--r--cmd-parse.y1
2 files changed, 1 insertions, 1 deletions
diff --git a/cmd-bind-key.c b/cmd-bind-key.c
index 4a6c8541..bb905bce 100644
--- a/cmd-bind-key.c
+++ b/cmd-bind-key.c
@@ -75,6 +75,7 @@ cmd_bind_key_exec(struct cmd *self, struct cmdq_item *item)
value = args_value(args, 1);
if (count == 2 && value->type == ARGS_COMMANDS) {
key_bindings_add(tablename, key, note, repeat, value->cmdlist);
+ value->cmdlist->references++;
return (CMD_RETURN_NORMAL);
}
diff --git a/cmd-parse.y b/cmd-parse.y
index f79c7fd3..a08c5819 100644
--- a/cmd-parse.y
+++ b/cmd-parse.y
@@ -817,7 +817,6 @@ cmd_parse_build_command(struct cmd_parse_command *cmd,
goto out;
values[count].type = ARGS_COMMANDS;
values[count].cmdlist = pr->cmdlist;
- values[count].cmdlist->references++;
break;
}
count++;