mingw: keep trailing slashes for _wchdir() and readlink()

This is needed so that `_wchdir()` can be used with drive root
directories, e.g. C:\ (`_wchdir("C:")` fails to switch the directory
to the root directory).

This fixes https://github.com/msysgit/git/issues/359 (in Git for Windows
2.x only, though).

Likewise, `readlink()`'s semantics require a trailing slash for symbolic
links pointing to directories. Otherwise all checked out symbolic links
pointing to directories would be marked as modified even directly after a
fresh clone.

This fixes https://github.com/git-for-windows/git/issues/210

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
This commit is contained in:
Johannes Schindelin
2015-06-19 21:00:46 +00:00
parent f96d459cf7
commit 3ca21d9388

View File

@@ -376,9 +376,6 @@ static wchar_t *normalize_ntpath(wchar_t *wbuf)
for (i = 0; wbuf[i]; i++)
if (wbuf[i] == '\\')
wbuf[i] = '/';
/* remove potential trailing slashes */
while (i && wbuf[i - 1] == '/')
wbuf[--i] = 0;
return wbuf;
}