diff options
| author | Paul Betts <paul@paulbetts.org> | 2011-09-21 11:17:30 -0700 |
|---|---|---|
| committer | Paul Betts <paul@paulbetts.org> | 2011-09-21 11:17:30 -0700 |
| commit | ac31a60bcd4dd5bf6542115a54c18718d64663ef (patch) | |
| tree | 451559b8082bc60a6f60e77910647e22a4307b79 /src/config.c | |
| parent | 6d0ef97478633263cafa1329e865f5a33b950ac3 (diff) | |
| download | libgit2-ac31a60bcd4dd5bf6542115a54c18718d64663ef.tar.gz | |
Rewrite getenv to use Win32 version on Windows
Diffstat (limited to 'src/config.c')
| -rw-r--r-- | src/config.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/config.c b/src/config.c index f233e76fd..261beb425 100644 --- a/src/config.c +++ b/src/config.c @@ -306,20 +306,24 @@ int git_config_get_string(git_config *cfg, const char *name, const char **out) int git_config_find_global(char *global_config_path) { - const char *home; + char *home; - home = getenv("HOME"); + home = p_getenv("HOME"); #ifdef GIT_WIN32 if (home == NULL) - home = getenv("USERPROFILE"); + home = p_getenv("USERPROFILE"); #endif - if (home == NULL) + if (home == NULL) { + free(home); return git__throw(GIT_EOSERR, "Failed to open global config file. Cannot locate the user's home directory"); + } git_path_join(global_config_path, home, GIT_CONFIG_FILENAME); + free(home); + if (git_futils_exists(global_config_path) < GIT_SUCCESS) return git__throw(GIT_EOSERR, "Failed to open global config file. The file does not exist"); |
