Skip to content

Commit 32c291f

Browse files
committed
Merge pull request #2488 from bmueller84/master
mingw: fix fatal error working on mapped network drives on Windows
2 parents 6a828c7 + aecb88a commit 32c291f

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

compat/mingw.c

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1230,8 +1230,13 @@ char *mingw_getcwd(char *pointer, int len)
12301230
if (hnd != INVALID_HANDLE_VALUE) {
12311231
ret = GetFinalPathNameByHandleW(hnd, wpointer, ARRAY_SIZE(wpointer), 0);
12321232
CloseHandle(hnd);
1233-
if (!ret || ret >= ARRAY_SIZE(wpointer))
1234-
return NULL;
1233+
if (!ret || ret >= ARRAY_SIZE(wpointer)) {
1234+
ret = GetLongPathNameW(cwd, wpointer, ARRAY_SIZE(wpointer));
1235+
if (!ret || ret >= ARRAY_SIZE(wpointer)) {
1236+
errno = ret ? ENAMETOOLONG : err_win_to_posix(GetLastError());
1237+
return NULL;
1238+
}
1239+
}
12351240
if (xwcstoutf(pointer, normalize_ntpath(wpointer), len) < 0)
12361241
return NULL;
12371242
return pointer;

0 commit comments

Comments
 (0)