Sync OpenBSD patchset 249:

When started as the shell, __progname contains a leading -, so hardcode "tmux"
for socket path and log files, and strip it when working out the shell.
This commit is contained in:
Tiago Cunha 2009-08-14 21:28:00 +00:00
parent 1063e5d0e4
commit 06b3f49c49
2 changed files with 9 additions and 6 deletions

7
tmux.c
View File

@ -1,4 +1,4 @@
/* $Id: tmux.c,v 1.160 2009-08-14 21:04:04 tcunha Exp $ */
/* $Id: tmux.c,v 1.161 2009-08-14 21:28:00 tcunha Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -88,8 +88,7 @@ logfile(const char *name)
log_close();
if (debug_level > 0) {
xasprintf(
&path, "%s-%s-%ld.log", __progname, name, (long) getpid());
xasprintf(&path, "tmux-%s-%ld.log", name, (long) getpid());
log_open_file(debug_level, path);
xfree(path);
}
@ -193,7 +192,7 @@ makesockpath(const char *label)
u_int uid;
uid = getuid();
xsnprintf(base, MAXPATHLEN, "%s/%s-%d", _PATH_TMP, __progname, uid);
xsnprintf(base, MAXPATHLEN, "%s/tmux-%d", _PATH_TMP, uid);
if (mkdir(base, S_IRWXU) != 0 && errno != EEXIST)
return (NULL);

View File

@ -1,4 +1,4 @@
/* $Id: window.c,v 1.101 2009-08-14 21:23:20 tcunha Exp $ */
/* $Id: window.c,v 1.102 2009-08-14 21:28:00 tcunha Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -60,6 +60,7 @@ const char *
window_default_command(void)
{
const char *shell, *ptr;
char *progname;
struct passwd *pw;
shell = getenv("SHELL");
@ -79,7 +80,10 @@ found:
ptr++;
else
ptr = shell;
if (strcmp(ptr, __progname) == 0)
progname = __progname;
if (*progname == '-')
progname++;
if (strcmp(ptr, progname) == 0)
return (_PATH_BSHELL);
return (shell);
}