summaryrefslogtreecommitdiffstats
path: root/cmd.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicm@openbsd.org>2013-03-25 10:09:05 +0000
committerNicholas Marriott <nicm@openbsd.org>2013-03-25 10:09:05 +0000
commit410a3abbefee60750432d4c0ddcf9157e5b6f580 (patch)
tree38e68be21c8058579be3452f5cba8ddf660ecf91 /cmd.c
parent304336a5917db5778854c71afd4e1f19bb11e476 (diff)
Add a wait-for command which blocks a client on a named channel until it
is woken up again (with wait-for -S). From Thiago Padilha.
Diffstat (limited to 'cmd.c')
-rw-r--r--cmd.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/cmd.c b/cmd.c
index 5f530299..33ce730f 100644
--- a/cmd.c
+++ b/cmd.c
@@ -113,6 +113,7 @@ const struct cmd_entry *cmd_table[] = {
&cmd_switch_client_entry,
&cmd_unbind_key_entry,
&cmd_unlink_window_entry,
+ &cmd_wait_for_entry,
NULL
};
@@ -327,9 +328,9 @@ cmd_current_session(struct cmd_q *cmdq, int prefer_unattached)
return (c->session);
/*
- * If the name of the calling client's pty is know, build a list of the
- * sessions that contain it and if any choose either the first or the
- * newest.
+ * If the name of the calling client's pty is known, build a list of
+ * the sessions that contain it and if any choose either the first or
+ * the newest.
*/
path = c == NULL ? NULL : c->tty.path;
if (path != NULL) {
@@ -532,7 +533,7 @@ cmd_lookup_client(const char *name)
for (i = 0; i < ARRAY_LENGTH(&clients); i++) {
c = ARRAY_ITEM(&clients, i);
- if (c == NULL || c->session == NULL)
+ if (c == NULL || c->session == NULL || c->tty.path == NULL)
continue;
path = c->tty.path;