summaryrefslogtreecommitdiffstats
path: root/usr.bin/tmux/cmd.c
diff options
context:
space:
mode:
authornicm <nicm@openbsd.org>2015-12-13 18:31:47 +0000
committernicm <nicm@openbsd.org>2015-12-13 18:31:47 +0000
commit41d0f3aebc4ed48df9fb595058fe10c82fb0a4f8 (patch)
tree3282510fbc9c3fac9f076c65b616f5b32f397d1a /usr.bin/tmux/cmd.c
parentRemove an unnecessary function. (diff)
downloadwireguard-openbsd-41d0f3aebc4ed48df9fb595058fe10c82fb0a4f8.tar.xz
wireguard-openbsd-41d0f3aebc4ed48df9fb595058fe10c82fb0a4f8.zip
-c needs to be able for fail for display-message.
Diffstat (limited to 'usr.bin/tmux/cmd.c')
-rw-r--r--usr.bin/tmux/cmd.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/usr.bin/tmux/cmd.c b/usr.bin/tmux/cmd.c
index 2d204fa5dc2..52750ea66b8 100644
--- a/usr.bin/tmux/cmd.c
+++ b/usr.bin/tmux/cmd.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd.c,v 1.114 2015/12/13 18:27:47 nicm Exp $ */
+/* $OpenBSD: cmd.c,v 1.115 2015/12/13 18:31:47 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -585,7 +585,7 @@ cmd_prepare_state(struct cmd *cmd, struct cmd_q *cmdq)
struct cmd_state *state = &cmdq->state;
struct args *args = cmd->args;
char *tmp;
- int error;
+ int error, quiet;
tmp = cmd_print(cmd);
log_debug("preparing state for: %s (client %p)", tmp, cmdq->client);
@@ -594,6 +594,11 @@ cmd_prepare_state(struct cmd *cmd, struct cmd_q *cmdq)
/* Start with an empty state. */
cmd_clear_state(state);
+ /* No error messages if can fail. */
+ quiet = 0;
+ if (cmd->entry->flags & CMD_CLIENT_CANFAIL)
+ quiet = 1;
+
/*
* If the command wants a client and provides -c or -t, use it. If not,
* try the base command instead via cmd_get_state_client. No client is
@@ -604,13 +609,13 @@ cmd_prepare_state(struct cmd *cmd, struct cmd_q *cmdq)
state->c = cmd_find_client(cmdq, NULL, 1);
break;
case CMD_CLIENT_C:
- state->c = cmd_find_client(cmdq, args_get(args, 'c'), 0);
- if (state->c == NULL)
+ state->c = cmd_find_client(cmdq, args_get(args, 'c'), quiet);
+ if (!quiet && state->c == NULL)
return (-1);
break;
case CMD_CLIENT_T:
- state->c = cmd_find_client(cmdq, args_get(args, 't'), 0);
- if (state->c == NULL)
+ state->c = cmd_find_client(cmdq, args_get(args, 't'), quiet);
+ if (!quiet && state->c == NULL)
return (-1);
break;
default: