diff options
Diffstat (limited to 'tmux.c')
-rw-r--r-- | tmux.c | 15 |
1 files changed, 10 insertions, 5 deletions
@@ -1,4 +1,4 @@ -/* $Id: tmux.c,v 1.169 2009-09-03 20:44:38 tcunha Exp $ */ +/* $Id: tmux.c,v 1.170 2009-09-03 21:02:55 tcunha Exp $ */ /* * Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net> @@ -62,6 +62,7 @@ int debug_level; int be_quiet; time_t start_time; char *socket_path; +int login_shell; __dead void usage(void); char *makesockpath(const char *); @@ -77,8 +78,8 @@ __dead void usage(void) { fprintf(stderr, - "usage: %s [-28dqUuv] [-f file] [-L socket-name] [-S socket-path]\n" - " [command [flags]]\n", + "usage: %s [-28dlqUuv] [-f file] [-L socket-name]\n" + " [-S socket-path] [command [flags]]\n", __progname); exit(1); } @@ -325,8 +326,9 @@ main(int argc, char **argv) unlock = flags = 0; label = path = NULL; - while ((opt = getopt(argc, argv, "28df:L:qS:uUv")) != -1) { - switch (opt) { + login_shell = (**argv == '-'); + while ((opt = getopt(argc, argv, "28df:lL:qS:uUv")) != -1) { + switch (opt) { case '2': flags |= IDENTIFY_256COLOURS; flags &= ~IDENTIFY_88COLOURS; @@ -343,6 +345,9 @@ main(int argc, char **argv) xfree(cfg_file); cfg_file = xstrdup(optarg); break; + case 'l': + login_shell = 1; + break; case 'L': if (label != NULL) xfree(label); |