compat/mingw.c: do not warn when failing to get owner

In the case of Git for Windows (say, in a Git Bash window) running in a
Windows Subsystem for Linux (WSL) directory, the GetNamedSecurityInfoW()
call in is_path_owned_By_current_side() returns an error code other than
ERROR_SUCCESS. This is consistent behavior across this boundary.

In these cases, the owner would always be different because the WSL
owner is a different entity than the Windows user.

The change here is to suppress the error message that looks like this:

  error: failed to get owner for '//wsl.localhost/...' (1)

Before this change, this warning happens for every Git command,
regardless of whether the directory is marked with safe.directory.

Signed-off-by: Derrick Stolee <derrickstolee@github.com>
This commit is contained in:
Derrick Stolee 2022-04-13 14:54:43 -04:00 коммит произвёл Johannes Schindelin
Родитель 620b06bd22
Коммит af77671aa2
1 изменённых файлов: 1 добавлений и 3 удалений

Просмотреть файл

@ -2707,9 +2707,7 @@ int is_path_owned_by_current_sid(const char *path)
DACL_SECURITY_INFORMATION, DACL_SECURITY_INFORMATION,
&sid, NULL, NULL, NULL, &descriptor); &sid, NULL, NULL, NULL, &descriptor);
if (err != ERROR_SUCCESS) if (err == ERROR_SUCCESS && sid && IsValidSid(sid)) {
error(_("failed to get owner for '%s' (%ld)"), path, err);
else if (sid && IsValidSid(sid)) {
/* Now, verify that the SID matches the current user's */ /* Now, verify that the SID matches the current user's */
static PSID current_user_sid; static PSID current_user_sid;