summaryrefslogtreecommitdiffstats
path: root/usr.bin/tmux/cmd-if-shell.c
diff options
context:
space:
mode:
authornicm <nicm@openbsd.org>2013-10-10 12:04:38 +0000
committernicm <nicm@openbsd.org>2013-10-10 12:04:38 +0000
commitd9ada8a18a357e36c5b3bd0fd3f9ba988e079ad5 (patch)
treeec4ef5cb6a2dcd664af7e0463eb05479f1607b19 /usr.bin/tmux/cmd-if-shell.c
parentRestore missing key binding for %, from Chris Johnsen. (diff)
downloadwireguard-openbsd-d9ada8a18a357e36c5b3bd0fd3f9ba988e079ad5.tar.xz
wireguard-openbsd-d9ada8a18a357e36c5b3bd0fd3f9ba988e079ad5.zip
Make cmdq->client_exit a tristate (-1 means "not set") so that if
explicitly set it can be copied from child to parent cmdq by if-shell and source-file. This fixes using attach or new. From Chris Johnsen.
Diffstat (limited to 'usr.bin/tmux/cmd-if-shell.c')
-rw-r--r--usr.bin/tmux/cmd-if-shell.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/usr.bin/tmux/cmd-if-shell.c b/usr.bin/tmux/cmd-if-shell.c
index 50ec9862a54..6a29c2a6449 100644
--- a/usr.bin/tmux/cmd-if-shell.c
+++ b/usr.bin/tmux/cmd-if-shell.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cmd-if-shell.c,v 1.24 2013/10/10 12:00:19 nicm Exp $ */
+/* $OpenBSD: cmd-if-shell.c,v 1.25 2013/10/10 12:04:38 nicm Exp $ */
/*
* Copyright (c) 2009 Tiago Cunha <me@tiagocunha.org>
@@ -147,6 +147,9 @@ cmd_if_shell_done(struct cmd_q *cmdq1)
struct cmd_if_shell_data *cdata = cmdq1->data;
struct cmd_q *cmdq = cdata->cmdq;
+ if (cmdq1->client_exit >= 0)
+ cmdq->client_exit = cmdq1->client_exit;
+
if (!cmdq_free(cmdq) && !cdata->bflag)
cmdq_continue(cmdq);