diff options
author | Junio C Hamano <gitster@pobox.com> | 2010-10-06 12:10:02 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-10-06 12:10:02 -0700 |
commit | 90215bf3008f0986a5a8414d6ea1523148f74826 (patch) | |
tree | 28ccc42636720fd840fca860db90c23fcda3b23b /environment.c | |
parent | 931c103320e7be6318f3ea107f0701e283b64f35 (diff) | |
parent | 6db2103f92cf6c5caeeddec0bfd5f57f94e81d81 (diff) | |
download | git-90215bf3008f0986a5a8414d6ea1523148f74826.tar.gz |
Merge branch 'maint'
* maint:
Documentation/git-clone: describe --mirror more verbosely
do not depend on signed integer overflow
work around buggy S_ISxxx(m) implementations
xdiff: cast arguments for ctype functions to unsigned char
init: plug tiny one-time memory leak
diffcore-pickaxe.c: remove unnecessary curly braces
t3020 (ls-files-error-unmatch): remove stray '1' from end of file
setup: make sure git dir path is in a permanent buffer
environment.c: remove unused variable
git-svn: fix processing of decorated commit hashes
git-svn: check_cherry_pick should exclude commits already in our history
Documentation/git-svn: discourage "noMetadata"
Diffstat (limited to 'environment.c')
-rw-r--r-- | environment.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/environment.c b/environment.c index 2d0c315379..de5581fe51 100644 --- a/environment.c +++ b/environment.c @@ -64,7 +64,7 @@ char *git_work_tree_cfg; static char *work_tree; static const char *git_dir; -static char *git_object_dir, *git_index_file, *git_refs_dir, *git_graft_file; +static char *git_object_dir, *git_index_file, *git_graft_file; /* * Repository-local GIT_* environment variables @@ -87,8 +87,10 @@ const char * const local_repo_env[LOCAL_REPO_ENV_SIZE + 1] = { static void setup_git_env(void) { git_dir = getenv(GIT_DIR_ENVIRONMENT); - if (!git_dir) + if (!git_dir) { git_dir = read_gitfile_gently(DEFAULT_GIT_DIR_ENVIRONMENT); + git_dir = git_dir ? xstrdup(git_dir) : NULL; + } if (!git_dir) git_dir = DEFAULT_GIT_DIR_ENVIRONMENT; git_object_dir = getenv(DB_ENVIRONMENT); @@ -96,8 +98,6 @@ static void setup_git_env(void) git_object_dir = xmalloc(strlen(git_dir) + 9); sprintf(git_object_dir, "%s/objects", git_dir); } - git_refs_dir = xmalloc(strlen(git_dir) + 6); - sprintf(git_refs_dir, "%s/refs", git_dir); git_index_file = getenv(INDEX_ENVIRONMENT); if (!git_index_file) { git_index_file = xmalloc(strlen(git_dir) + 7); |