From: Stefan Beller Date: Tue, 24 Jan 2017 23:56:49 +0000 (-0800) Subject: setup: add gentle version of resolve_git_dir X-Git-Tag: v2.12.0-rc0~6^2~2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=40d96325143ae04cb3f645ac96f6413d1f641b9b;p=git setup: add gentle version of resolve_git_dir This follows a93bedada (setup: add gentle version of read_gitfile, 2015-06-09), and assumes the same reasoning. resolve_git_dir is unsuited for speculative calls, so we want to use the gentle version to find out about potential errors. Signed-off-by: Stefan Beller Signed-off-by: Junio C Hamano --- diff --git a/cache.h b/cache.h index 00a029af36..cafa3d10ae 100644 --- a/cache.h +++ b/cache.h @@ -509,7 +509,9 @@ extern int is_nonbare_repository_dir(struct strbuf *path); #define READ_GITFILE_ERR_TOO_LARGE 8 extern const char *read_gitfile_gently(const char *path, int *return_error_code); #define read_gitfile(path) read_gitfile_gently((path), NULL) -extern const char *resolve_gitdir(const char *suspect); +extern const char *resolve_gitdir_gently(const char *suspect, int *return_error_code); +#define resolve_gitdir(path) resolve_gitdir_gently((path), NULL) + extern void set_git_work_tree(const char *tree); #define ALTERNATE_DB_ENVIRONMENT "GIT_ALTERNATE_OBJECT_DIRECTORIES" diff --git a/setup.c b/setup.c index 1b534a7508..4605fd3c3c 100644 --- a/setup.c +++ b/setup.c @@ -1017,11 +1017,11 @@ const char *setup_git_directory(void) return setup_git_directory_gently(NULL); } -const char *resolve_gitdir(const char *suspect) +const char *resolve_gitdir_gently(const char *suspect, int *return_error_code) { if (is_git_directory(suspect)) return suspect; - return read_gitfile(suspect); + return read_gitfile_gently(suspect, return_error_code); } /* if any standard file descriptor is missing open it to /dev/null */