From: Junio C Hamano Date: Wed, 4 Jul 2007 19:45:42 +0000 (-0700) Subject: Do not check if getcwd() result begins with a slash. X-Git-Tag: v1.5.3-rc1~84 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=f66a4d68d2066998605f5910c3c8dd1e4a25fc7f;p=git.git Do not check if getcwd() result begins with a slash. In user space, and for getcwd(), the check to see if the resulting path begins with a '/' does not make sense. This is merely a mistake by Linus who is so used to code for the kernel, where a d_path() return value pathname can be either a real path, or something like "pipe:[8003]", and the difference is the '/' at the beginning. Pointed out by Dscho, Matthias Lederhofer and clarified by Linus. Signed-off-by: Junio C Hamano --- diff --git a/setup.c b/setup.c index 01f74d464..bb26f3af9 100644 --- a/setup.c +++ b/setup.c @@ -211,7 +211,7 @@ const char *setup_git_directory_gently(int *nongit_ok) if (!gitdirenv) { int len, offset; - if (!getcwd(cwd, sizeof(cwd)-1) || cwd[0] != '/') + if (!getcwd(cwd, sizeof(cwd)-1)) die("Unable to read current working directory"); offset = len = strlen(cwd); @@ -271,7 +271,7 @@ const char *setup_git_directory_gently(int *nongit_ok) die("Not a git repository: '%s'", gitdirenv); } - if (!getcwd(cwd, sizeof(cwd)-1) || cwd[0] != '/') + if (!getcwd(cwd, sizeof(cwd)-1)) die("Unable to read current working directory"); if (chdir(gitdirenv)) { if (nongit_ok) { @@ -281,7 +281,7 @@ const char *setup_git_directory_gently(int *nongit_ok) die("Cannot change directory to $%s '%s'", GIT_DIR_ENVIRONMENT, gitdirenv); } - if (!getcwd(gitdir, sizeof(gitdir)-1) || gitdir[0] != '/') + if (!getcwd(gitdir, sizeof(gitdir)-1)) die("Unable to read current working directory"); if (chdir(cwd)) die("Cannot come back to cwd"); @@ -340,7 +340,7 @@ const char *setup_git_directory_gently(int *nongit_ok) die("Cannot change directory to working tree '%s'", gitworktree); } - if (!getcwd(worktree, sizeof(worktree)-1) || worktree[0] != '/') + if (!getcwd(worktree, sizeof(worktree)-1)) die("Unable to read current working directory"); strcat(worktree, "/"); inside_work_tree = !prefixcmp(cwd, worktree);