Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'winsup/cygwin/syscalls.cc')
-rw-r--r--winsup/cygwin/syscalls.cc8
1 files changed, 3 insertions, 5 deletions
diff --git a/winsup/cygwin/syscalls.cc b/winsup/cygwin/syscalls.cc
index 1bc3a7f8d..d593b7f68 100644
--- a/winsup/cygwin/syscalls.cc
+++ b/winsup/cygwin/syscalls.cc
@@ -494,8 +494,8 @@ int
_link (const char *a, const char *b)
{
int res = -1;
- path_conv real_a (a, PC_SYM_NOFOLLOW);
- path_conv real_b (b, PC_SYM_NOFOLLOW);
+ path_conv real_a (a, PC_SYM_NOFOLLOW | PC_FULL);
+ path_conv real_b (b, PC_SYM_NOFOLLOW | PC_FULL);
if (real_a.error)
{
@@ -525,7 +525,6 @@ _link (const char *a, const char *b)
DWORD cbPathLen;
DWORD StreamSize;
WCHAR wbuf[MAX_PATH];
- char buf[MAX_PATH];
BOOL bSuccess;
@@ -546,8 +545,7 @@ _link (const char *a, const char *b)
}
lpContext = NULL;
- cygwin_conv_to_full_win32_path (real_b.get_win32 (), buf);
- cbPathLen = sys_mbstowcs (wbuf, buf, MAX_PATH) * sizeof (WCHAR);
+ cbPathLen = sys_mbstowcs (wbuf, real_b.get_win32 (), MAX_PATH) * sizeof (WCHAR);
StreamId.dwStreamId = BACKUP_LINK;
StreamId.dwStreamAttributes = 0;