summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Adam <thomas@xteddy.org>2021-01-17 18:01:21 +0000
committerThomas Adam <thomas@xteddy.org>2021-01-17 18:01:21 +0000
commit24c15eda793022f834fc28079f95ca71e2e2215c (patch)
tree48a01f6cbdc6680f52c7880aacc1c6b3d65b76f0
parentd4866d5fe6214064882244ddb32f05480e9d8d91 (diff)
parent71c590a37f98d82c72279eddae74f9b8be146202 (diff)
Merge branch 'obsd-master' into master
-rw-r--r--client.c2
-rw-r--r--tmux.15
-rw-r--r--tmux.c7
-rw-r--r--tmux.h2
4 files changed, 13 insertions, 3 deletions
diff --git a/client.c b/client.c
index 8b17aa22..e4c0806b 100644
--- a/client.c
+++ b/client.c
@@ -126,6 +126,8 @@ retry:
log_debug("connect failed: %s", strerror(errno));
if (errno != ECONNREFUSED && errno != ENOENT)
goto failed;
+ if (flags & CLIENT_NOSTARTSERVER)
+ goto failed;
if (~flags & CLIENT_STARTSERVER)
goto failed;
close(fd);
diff --git a/tmux.1 b/tmux.1
index b4d6504d..a641b91a 100644
--- a/tmux.1
+++ b/tmux.1
@@ -191,6 +191,11 @@ directories are missing).
Behave as a login shell.
This flag currently has no effect and is for compatibility with other shells
when using tmux as a login shell.
+.It Fl N
+Do not start the server even if the command would normally do so (for example
+.Ic new-session
+or
+.Ic start-server ) .
.It Fl S Ar socket-path
Specify a full alternative path to the server socket.
If
diff --git a/tmux.c b/tmux.c
index 96b94e01..ef8ff384 100644
--- a/tmux.c
+++ b/tmux.c
@@ -53,7 +53,7 @@ static __dead void
usage(void)
{
fprintf(stderr,
- "usage: %s [-2CDluvV] [-c shell-command] [-f file] [-L socket-name]\n"
+ "usage: %s [-2CDlNuvV] [-c shell-command] [-f file] [-L socket-name]\n"
" [-S socket-path] [-T features] [command [flags]]\n",
getprogname());
exit(1);
@@ -340,7 +340,7 @@ main(int argc, char **argv)
if (**argv == '-')
flags = CLIENT_LOGIN;
- while ((opt = getopt(argc, argv, "2c:CDdf:lL:qS:T:uUvV")) != -1) {
+ while ((opt = getopt(argc, argv, "2c:CDdf:lL:NqS:T:uUvV")) != -1) {
switch (opt) {
case '2':
tty_add_features(&feat, "256", ":,");
@@ -370,6 +370,9 @@ main(int argc, char **argv)
free(label);
label = xstrdup(optarg);
break;
+ case 'N':
+ flags |= CLIENT_NOSTARTSERVER;
+ break;
case 'q':
break;
case 'S':
diff --git a/tmux.h b/tmux.h
index 0d7d8f48..3093424f 100644
--- a/tmux.h
+++ b/tmux.h
@@ -1636,7 +1636,7 @@ struct client {
#define CLIENT_DEAD 0x200
#define CLIENT_REDRAWBORDERS 0x400
#define CLIENT_READONLY 0x800
-/* 0x1000 unused */
+#define CLIENT_NOSTARTSERVER 0x1000
#define CLIENT_CONTROL 0x2000
#define CLIENT_CONTROLCONTROL 0x4000
#define CLIENT_FOCUSED 0x8000