mirror of
https://git.proxmox.com/git/libgit2
synced 2025-06-20 13:41:23 +00:00
Honor %HOME% on windows
Use %HOME% before trying to figure out the windows user directory. Users might set this as they are used on *nix systems. Signed-off-by: Sven Strickroth <email@cs-ware.de>
This commit is contained in:
parent
63f6c82568
commit
aed8f8a101
@ -455,9 +455,20 @@ int git_futils_find_system_file(git_buf *path, const char *filename)
|
|||||||
|
|
||||||
int git_futils_find_global_file(git_buf *path, const char *filename)
|
int git_futils_find_global_file(git_buf *path, const char *filename)
|
||||||
{
|
{
|
||||||
|
const char *home = getenv("HOME");
|
||||||
|
|
||||||
#ifdef GIT_WIN32
|
#ifdef GIT_WIN32
|
||||||
struct win32_path root;
|
struct win32_path root;
|
||||||
|
|
||||||
|
if (home != NULL) {
|
||||||
|
if (git_buf_joinpath(path, home, filename) < 0)
|
||||||
|
return -1;
|
||||||
|
|
||||||
|
if (git_path_exists(path->ptr)) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (win32_expand_path(&root, L"%USERPROFILE%\\") < 0 ||
|
if (win32_expand_path(&root, L"%USERPROFILE%\\") < 0 ||
|
||||||
root.path[0] == L'%') /* i.e. no expansion happened */
|
root.path[0] == L'%') /* i.e. no expansion happened */
|
||||||
{
|
{
|
||||||
@ -473,8 +484,6 @@ int git_futils_find_global_file(git_buf *path, const char *filename)
|
|||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
#else
|
#else
|
||||||
const char *home = getenv("HOME");
|
|
||||||
|
|
||||||
if (home == NULL) {
|
if (home == NULL) {
|
||||||
giterr_set(GITERR_OS, "Global file lookup failed. "
|
giterr_set(GITERR_OS, "Global file lookup failed. "
|
||||||
"Cannot locate the user's home directory");
|
"Cannot locate the user's home directory");
|
||||||
|
Loading…
Reference in New Issue
Block a user