diff options
Diffstat (limited to 'tmux.c')
-rw-r--r-- | tmux.c | 21 |
1 files changed, 14 insertions, 7 deletions
@@ -23,9 +23,7 @@ #include <errno.h> #include <event.h> #include <fcntl.h> -#include <getopt.h> #include <locale.h> -#include <paths.h> #include <pwd.h> #include <stdlib.h> #include <string.h> @@ -34,7 +32,7 @@ #include "tmux.h" -#ifdef DEBUG +#if defined(DEBUG) && defined(__OpenBSD__) extern char *malloc_options; #endif @@ -51,11 +49,15 @@ char socket_path[PATH_MAX]; __dead void usage(void); char *makesocketpath(const char *); +#ifndef HAVE___PROGNAME +char *__progname = (char *) "tmux"; +#endif + __dead void usage(void) { fprintf(stderr, - "usage: %s [-2Cluv] [-c shell-command] [-f file] [-L socket-name]\n" + "usage: %s [-2CluvV] [-c shell-command] [-f file] [-L socket-name]\n" " [-S socket-path] [command [flags]]\n", __progname); exit(1); @@ -195,7 +197,7 @@ main(int argc, char **argv) const char *s; int opt, flags, keys; -#ifdef DEBUG +#if defined(DEBUG) && defined(__OpenBSD__) malloc_options = (char *) "AFGJPX"; #endif @@ -208,7 +210,7 @@ main(int argc, char **argv) flags = 0; label = path = NULL; - while ((opt = getopt(argc, argv, "2c:Cdf:lL:qS:uUv")) != -1) { + while ((opt = getopt(argc, argv, "2c:Cdf:lL:qS:uUVv")) != -1) { switch (opt) { case '2': flags |= CLIENT_256COLOURS; @@ -223,6 +225,9 @@ main(int argc, char **argv) else flags |= CLIENT_CONTROL; break; + case 'V': + printf("%s %s\n", __progname, VERSION); + exit(0); case 'f': set_cfg_file(optarg); break; @@ -255,9 +260,11 @@ main(int argc, char **argv) if (shell_cmd != NULL && argc != 0) usage(); +#ifdef __OpenBSD__ if (pledge("stdio rpath wpath cpath flock fattr unix sendfd recvfd " "proc exec tty ps", NULL) != 0) err(1, "pledge"); +#endif /* * tmux is a UTF-8 terminal, so if TMUX is set, assume UTF-8. @@ -347,5 +354,5 @@ main(int argc, char **argv) free(path); /* Pass control to the client. */ - exit(client_main(event_init(), argc, argv, flags)); + exit(client_main(osdep_event_init(), argc, argv, flags)); } |