Read the path from $TMUX if it is present and -L and -S are not given. Based on

a diff from Micah Cowan.
pull/1/head
Nicholas Marriott 2010-02-04 18:27:06 +00:00
parent 604b02cfaa
commit e7c6f81016
1 changed files with 23 additions and 6 deletions

29
tmux.c
View File

@ -443,13 +443,30 @@ main(int argc, char **argv)
}
}
if (label == NULL)
label = xstrdup("default");
if (path == NULL && (path = makesockpath(label)) == NULL) {
log_warn("can't create socket");
exit(1);
/*
* Figure out the socket path. If specified on the command-line with
* -S or -L, use it, otherwise try $TMUX or assume -L default.
*/
if (path == NULL) {
/* No -L. Try $TMUX, or default. */
if (label == NULL) {
if ((path = getenv("TMUX")) != NULL) {
path = xstrdup(path);
path[strcspn(path, ",")] = '\0';
} else
label = xstrdup("default");
}
/* -L or default set. */
if (label != NULL) {
if ((path = makesockpath(label)) == NULL) {
log_warn("can't create socket");
exit(1);
}
}
}
xfree(label);
if (label != NULL)
xfree(label);
if (shellcmd != NULL) {
msg = MSG_SHELL;