diff options
Diffstat (limited to 'winsup/cygwin/shortcut.c')
-rw-r--r-- | winsup/cygwin/shortcut.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/winsup/cygwin/shortcut.c b/winsup/cygwin/shortcut.c index 2f7c1e18a..1aaa5de9e 100644 --- a/winsup/cygwin/shortcut.c +++ b/winsup/cygwin/shortcut.c @@ -73,9 +73,7 @@ check_shortcut (const char *path, DWORD fileattr, HANDLE h, IShellLink *psl = NULL; IPersistFile *ppf = NULL; WCHAR wc_path[MAX_PATH]; - char full_path[MAX_PATH]; char file_header[SHORTCUT_HDR_SIZE]; - WIN32_FIND_DATA wfd; DWORD len = 0; int res = 0; DWORD got = 0; @@ -116,9 +114,13 @@ check_shortcut (const char *path, DWORD fileattr, HANDLE h, len = strlen (contents); } } +#if TREAT_NATIVE_SHORTCUTS_AS_SYMLINKS /* No description or not R/O: Check the "official" path. */ if (len == 0) { + char full_path[MAX_PATH]; + WIN32_FIND_DATA wfd; + /* Convert to full path (easy way) */ if ((path[0] == '\\' && path[1] == '\\') || (_toupper (path[0]) >= 'A' && _toupper (path[0]) <= 'Z' @@ -142,6 +144,7 @@ check_shortcut (const char *path, DWORD fileattr, HANDLE h, if (FAILED(hres)) goto file_not_symlink; } +#endif res = strlen (contents); if (res) /* It's a symlink. */ *pflags = PATH_SYMLINK; |