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 <sbeller@google.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Stefan Beller committed
Jan 24, 2017 at 15:56 UTC
40d96325143ae04cb3f645ac96f6413d1f641b9b
2 files changed
+5
-3
cache.h
+3
-1
@@ -509,7 +509,9 @@ extern int is_nonbare_repository_dir(struct strbuf *path);
509
#define READ_GITFILE_ERR_TOO_LARGE 8
510
extern const char *read_gitfile_gently(const char *path, int *return_error_code);
511
#define read_gitfile(path) read_gitfile_gently((path), NULL)
512
-extern const char *resolve_gitdir(const char *suspect);
512
+extern const char *resolve_gitdir_gently(const char *suspect, int *return_error_code);
513
+#define resolve_gitdir(path) resolve_gitdir_gently((path), NULL)
514
+
515
extern void set_git_work_tree(const char *tree);
516
517
#define ALTERNATE_DB_ENVIRONMENT "GIT_ALTERNATE_OBJECT_DIRECTORIES"
setup.c
+2
-2
@@ -1017,11 +1017,11 @@ const char *setup_git_directory(void)
1017
return setup_git_directory_gently(NULL);
1018
}
1019
1020
-const char *resolve_gitdir(const char *suspect)
1020
+const char *resolve_gitdir_gently(const char *suspect, int *return_error_code)
1021
{
1022
if (is_git_directory(suspect))
1023
return suspect;
1024
- return read_gitfile(suspect);
1024
+ return read_gitfile_gently(suspect, return_error_code);
1025
}
1026
1027
/* if any standard file descriptor is missing open it to /dev/null */