1
0
Fork 0
mirror of https://github.com/git/git.git synced 2024-10-28 12:59:41 +01:00

[PATCH] Provide access to git_dir through get_git_dir().

Signed-off-by: Sven Verdoolaege <skimo@kotnet.org>
Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
Sven Verdoolaege 2005-09-26 22:54:01 +02:00 committed by Junio C Hamano
parent edde7a8b53
commit 5da1606d0b
4 changed files with 10 additions and 7 deletions

View file

@ -136,6 +136,7 @@ extern unsigned int active_nr, active_alloc, active_cache_changed;
#define INDEX_ENVIRONMENT "GIT_INDEX_FILE"
#define GRAFT_ENVIRONMENT "GIT_GRAFT_FILE"
extern char *get_git_dir(void);
extern char *get_object_directory(void);
extern char *get_refs_directory(void);
extern char *get_index_file(void);

View file

@ -406,10 +406,7 @@ static int fsck_head_link(void)
char hex[40];
unsigned char sha1[20];
static char path[PATH_MAX], link[PATH_MAX];
const char *git_dir;
git_dir = getenv(GIT_DIR_ENVIRONMENT);
if (!git_dir) git_dir = DEFAULT_GIT_DIR_ENVIRONMENT;
const char *git_dir = get_git_dir();
snprintf(path, sizeof(path), "%s/HEAD", git_dir);
if (readlink(path, link, sizeof(link)) < 0)

4
path.c
View file

@ -41,12 +41,10 @@ char *mkpath(const char *fmt, ...)
char *git_path(const char *fmt, ...)
{
const char *git_dir;
const char *git_dir = get_git_dir();
va_list args;
unsigned len;
git_dir = getenv(GIT_DIR_ENVIRONMENT);
if (!git_dir) git_dir = DEFAULT_GIT_DIR_ENVIRONMENT;
len = strlen(git_dir);
if (len > PATH_MAX-100)
return bad_path;

View file

@ -70,6 +70,13 @@ static void setup_git_env(void)
git_graft_file = strdup(git_path("info/grafts"));
}
char *get_git_dir(void)
{
if (!git_dir)
setup_git_env();
return git_dir;
}
char *get_object_directory(void)
{
if (!git_object_dir)