summaryrefslogtreecommitdiffstats
path: root/tmux.c
diff options
context:
space:
mode:
authorNicholas Marriott <nicholas.marriott@gmail.com>2013-10-06 22:38:33 +0100
committerNicholas Marriott <nicholas.marriott@gmail.com>2013-10-06 22:38:33 +0100
commite9b09faab262f179fec936c4036713866b98e3d0 (patch)
tree75efa6b12a3b46b846d7c1eb39bb4894c2b25b2f /tmux.c
parent5ea6148362e6f80019b0f41c29bdc395c69e41dc (diff)
We accidentally haven't been using $TMUX to work out the session for a while
and in fact it is less useful that using the client ttyname. So don't bother and don't pass it from the client. If we need it in future it is in c->environ.
Diffstat (limited to 'tmux.c')
-rw-r--r--tmux.c30
1 files changed, 8 insertions, 22 deletions
diff --git a/tmux.c b/tmux.c
index a0359969..1e6edd90 100644
--- a/tmux.c
+++ b/tmux.c
@@ -48,11 +48,8 @@ time_t start_time;
char socket_path[MAXPATHLEN];
int login_shell;
char *environ_path;
-pid_t environ_pid = -1;
-int environ_session_id = -1;
__dead void usage(void);
-void parseenvironment(void);
char *makesocketpath(const char *);
#ifndef HAVE___PROGNAME
@@ -127,23 +124,6 @@ areshell(const char *shell)
return (0);
}
-void
-parseenvironment(void)
-{
- char *env, path[256];
- long pid;
- int id;
-
- if ((env = getenv("TMUX")) == NULL)
- return;
-
- if (sscanf(env, "%255[^,],%ld,%d", path, &pid, &id) != 3)
- return;
- environ_path = xstrdup(path);
- environ_pid = pid;
- environ_session_id = id;
-}
-
char *
makesocketpath(const char *label)
{
@@ -226,7 +206,9 @@ main(int argc, char **argv)
{
struct passwd *pw;
char *s, *path, *label, *home, **var, tmp[MAXPATHLEN];
- int opt, flags, quiet, keys;
+ char in[256];
+ long long pid;
+ int opt, flags, quiet, keys, session;
#if defined(DEBUG) && defined(__OpenBSD__)
malloc_options = (char *) "AFGJPX";
@@ -357,11 +339,15 @@ main(int argc, char **argv)
}
}
+ /* Get path from environment. */
+ s = getenv("TMUX");
+ if (s != NULL && sscanf(s, "%255[^,],%lld,%d", in, &pid, &session) == 3)
+ environ_path = xstrdup(in);
+
/*
* Figure out the socket path. If specified on the command-line with -S
* or -L, use it, otherwise try $TMUX or assume -L default.
*/
- parseenvironment();
if (path == NULL) {
/* If no -L, use the environment. */
if (label == NULL) {