aboutsummaryrefslogtreecommitdiff
path: root/cmd-command-prompt.c
diff options
context:
space:
mode:
authornicm <nicm>2020-04-13 20:51:57 +0000
committernicm <nicm>2020-04-13 20:51:57 +0000
commit3f7f9a0e20522c73e33480673496240f1bac724b (patch)
treec0ec19a026014bfd6981622ecd9ee2783344ef25 /cmd-command-prompt.c
parent187277eaadc4a675659bf7ede88f50bfe6cc7be9 (diff)
downloadrtmux-3f7f9a0e20522c73e33480673496240f1bac724b.tar.gz
rtmux-3f7f9a0e20522c73e33480673496240f1bac724b.tar.bz2
rtmux-3f7f9a0e20522c73e33480673496240f1bac724b.zip
Make client -c and -t handling common in cmd-queue.c and try to be
clearer about whether the client is the target client (must have a session) or not.
Diffstat (limited to 'cmd-command-prompt.c')
-rw-r--r--cmd-command-prompt.c11
1 files changed, 4 insertions, 7 deletions
diff --git a/cmd-command-prompt.c b/cmd-command-prompt.c
index 510600e3..e53c4320 100644
--- a/cmd-command-prompt.c
+++ b/cmd-command-prompt.c
@@ -44,7 +44,7 @@ const struct cmd_entry cmd_command_prompt_entry = {
.usage = "[-1kiN] [-I inputs] [-p prompts] " CMD_TARGET_CLIENT_USAGE " "
"[template]",
- .flags = 0,
+ .flags = CMD_CLIENT_TFLAG,
.exec = cmd_command_prompt_exec
};
@@ -65,16 +65,13 @@ static enum cmd_retval
cmd_command_prompt_exec(struct cmd *self, struct cmdq_item *item)
{
struct args *args = cmd_get_args(self);
+ struct client *tc = cmdq_get_target_client(item);
const char *inputs, *prompts;
struct cmd_command_prompt_cdata *cdata;
- struct client *c;
char *prompt, *ptr, *input = NULL;
size_t n;
- if ((c = cmd_find_client(item, args_get(args, 't'), 0)) == NULL)
- return (CMD_RETURN_ERROR);
-
- if (c->prompt_string != NULL)
+ if (tc->prompt_string != NULL)
return (CMD_RETURN_NORMAL);
cdata = xcalloc(1, sizeof *cdata);
@@ -124,7 +121,7 @@ cmd_command_prompt_exec(struct cmd *self, struct cmdq_item *item)
cdata->flags |= PROMPT_INCREMENTAL;
else if (args_has(args, 'k'))
cdata->flags |= PROMPT_KEY;
- status_prompt_set(c, prompt, input, cmd_command_prompt_callback,
+ status_prompt_set(tc, prompt, input, cmd_command_prompt_callback,
cmd_command_prompt_free, cdata, cdata->flags);
free(prompt);