summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--usr.bin/tmux/cmd-queue.c9
-rw-r--r--usr.bin/tmux/control.c5
-rw-r--r--usr.bin/tmux/tmux.h5
3 files changed, 14 insertions, 5 deletions
diff --git a/usr.bin/tmux/cmd-queue.c b/usr.bin/tmux/cmd-queue.c
index ba8b8349496..067aa8ad068 100644
--- a/usr.bin/tmux/cmd-queue.c
+++ b/usr.bin/tmux/cmd-queue.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-queue.c,v 1.8 2013/04/10 12:15:36 nicm Exp $ */
+/* $OpenBSD: cmd-queue.c,v 1.9 2013/06/23 12:41:54 nicm Exp $ */
/*
* Copyright (c) 2013 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -157,14 +157,17 @@ int
cmdq_guard(struct cmd_q *cmdq, const char *guard)
{
struct client *c = cmdq->client;
+ int flags;
if (c == NULL)
return 0;
if (!(c->flags & CLIENT_CONTROL))
return 0;
- evbuffer_add_printf(c->stdout_data, "%%%s %ld %u\n", guard,
- (long) cmdq->time, cmdq->number);
+ flags = !!(cmdq->cmd->flags & CMD_CONTROL);
+
+ evbuffer_add_printf(c->stdout_data, "%%%s %ld %u %d\n", guard,
+ (long) cmdq->time, cmdq->number, flags);
server_push_stdout(c);
return 1;
}
diff --git a/usr.bin/tmux/control.c b/usr.bin/tmux/control.c
index eff52463baa..5b5543f11c5 100644
--- a/usr.bin/tmux/control.c
+++ b/usr.bin/tmux/control.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: control.c,v 1.10 2013/03/26 10:54:48 nicm Exp $ */
+/* $OpenBSD: control.c,v 1.11 2013/06/23 12:41:55 nicm Exp $ */
/*
* Copyright (c) 2012 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -55,6 +55,7 @@ control_callback(struct client *c, int closed, unused void *data)
{
char *line, *cause;
struct cmd_list *cmdlist;
+ struct cmd *cmd;
if (closed)
c->flags |= CLIENT_EXIT;
@@ -78,6 +79,8 @@ control_callback(struct client *c, int closed, unused void *data)
free(cause);
} else {
+ TAILQ_FOREACH(cmd, &cmdlist->list, qentry)
+ cmd->flags |= CMD_CONTROL;
cmdq_run(c->cmdq, cmdlist);
cmd_list_free(cmdlist);
}
diff --git a/usr.bin/tmux/tmux.h b/usr.bin/tmux/tmux.h
index cc5ea8184b6..bdef7c567de 100644
--- a/usr.bin/tmux/tmux.h
+++ b/usr.bin/tmux/tmux.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: tmux.h,v 1.411 2013/06/02 07:52:15 nicm Exp $ */
+/* $OpenBSD: tmux.h,v 1.412 2013/06/23 12:41:55 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@@ -1383,6 +1383,9 @@ struct cmd {
char *file;
u_int line;
+#define CMD_CONTROL 0x1
+ int flags;
+
TAILQ_ENTRY(cmd) qentry;
};
struct cmd_list {