Browse Source

config --show-origin: report paths with forward slashes

On Windows, the backslash is the native directory separator, but all
supported Windows versions also accept the forward slash in most
circumstances.

Our tests expect forward slashes.

Relative paths are generated by Git using forward slashes.

So let's try to be consistent and use forward slashes in the $HOME part
of the paths reported by `git config --show-origin`, too.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Johannes Schindelin 9 years ago committed by Junio C Hamano
parent
commit
5ca6b7bb47
  1. 6
      compat/mingw.h
  2. 3
      path.c

6
compat/mingw.h

@ -396,6 +396,12 @@ static inline char *mingw_find_last_dir_sep(const char *path) @@ -396,6 +396,12 @@ static inline char *mingw_find_last_dir_sep(const char *path)
ret = (char *)path;
return ret;
}
static inline void convert_slashes(char *path)
{
for (; *path; path++)
if (*path == '\\')
*path = '/';
}
#define find_last_dir_sep mingw_find_last_dir_sep
int mingw_offset_1st_component(const char *path);
#define offset_1st_component mingw_offset_1st_component

3
path.c

@ -584,6 +584,9 @@ char *expand_user_path(const char *path) @@ -584,6 +584,9 @@ char *expand_user_path(const char *path)
if (!home)
goto return_null;
strbuf_addstr(&user_path, home);
#ifdef GIT_WINDOWS_NATIVE
convert_slashes(user_path.buf);
#endif
} else {
struct passwd *pw = getpw_str(username, username_len);
if (!pw)

Loading…
Cancel
Save