From dbbb297d5fc87f1e9f5bbd050a51f9d56dd0a26c Mon Sep 17 00:00:00 2001 From: Nicholas Marriott Date: Thu, 25 Jun 2009 06:54:32 +0000 Subject: [PATCH] If getcwd() fails, use the user's home directory, or /, instead of failing with an error. --- tmux.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/tmux.c b/tmux.c index 915d0acd..84e5a029 100644 --- a/tmux.c +++ b/tmux.c @@ -371,8 +371,11 @@ main(int argc, char **argv) &global_options, "default-command", "exec %s -l", shell); if (getcwd(cwd, sizeof cwd) == NULL) { - log_warn("getcwd"); - exit(1); + pw = getpwuid(getuid()); + if (pw->pw_dir != NULL && *pw->pw_dir != '\0') + strlcpy(cwd, pw->pw_dir, sizeof cwd); + else + strlcpy(cwd, "/", sizeof cwd); } options_set_string(&global_options, "default-path", "%s", cwd);