From bb14c36a27d308281af32dfa2e2f9b25d9755537 Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Wed, 22 Jul 2009 21:58:56 +0000 Subject: Pass a set of flags into client_init rather than just a start_server variable. Only one flag now but more to come later. --- client.c | 6 +++--- tmux.c | 9 ++++----- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/client.c b/client.c index a017e7a7..5ad15321 100644 --- a/client.c +++ b/client.c @@ -36,7 +36,7 @@ void client_handle_winch(struct client_ctx *); int -client_init(char *path, struct client_ctx *cctx, int start_server, int flags) +client_init(char *path, struct client_ctx *cctx, int cmdflags, int flags) { struct sockaddr_un sa; struct stat sb; @@ -53,7 +53,7 @@ client_init(char *path, struct client_ctx *cctx, int start_server, int flags) setproctitle("client (%s)", rpathbuf); if (lstat(path, &sb) != 0) { - if (start_server && errno == ENOENT) { + if (cmdflags & CMD_STARTSERVER && errno == ENOENT) { if ((cctx->srv_fd = server_start(path)) == -1) goto start_failed; goto server_started; @@ -79,7 +79,7 @@ client_init(char *path, struct client_ctx *cctx, int start_server, int flags) if (connect( cctx->srv_fd, (struct sockaddr *) &sa, SUN_LEN(&sa)) == -1) { if (errno == ECONNREFUSED) { - if (unlink(path) != 0 || !start_server) + if (unlink(path) != 0 || !(cmdflags & CMD_STARTSERVER)) goto not_found; if ((cctx->srv_fd = server_start(path)) == -1) goto start_failed; diff --git a/tmux.c b/tmux.c index 9ca1783f..2a155d57 100644 --- a/tmux.c +++ b/tmux.c @@ -213,7 +213,7 @@ main(int argc, char **argv) struct passwd *pw; char *s, *path, *label, *cause, *home, *pass = NULL; char cwd[MAXPATHLEN]; - int retcode, opt, flags, unlock, start_server; + int retcode, opt, flags, unlock, cmdflags = 0; unlock = flags = 0; label = path = NULL; @@ -390,7 +390,7 @@ main(int argc, char **argv) cmdlist = NULL; if ((pass = getpass("Password: ")) == NULL) exit(1); - start_server = 0; + cmdflags &= ~CMD_STARTSERVER; } else { if (argc == 0) { cmd = xmalloc(sizeof *cmd); @@ -407,17 +407,16 @@ main(int argc, char **argv) exit(1); } } - start_server = 0; TAILQ_FOREACH(cmd, cmdlist, qentry) { if (cmd->entry->flags & CMD_STARTSERVER) { - start_server = 1; + cmdflags |= CMD_STARTSERVER; break; } } } memset(&cctx, 0, sizeof cctx); - if (client_init(path, &cctx, start_server, flags) != 0) + if (client_init(path, &cctx, cmdflags, flags) != 0) exit(1); xfree(path); -- cgit v1.2.3