1
0
forked from aniani/vim

patch 9.1.0499: MS-Windows: doesn't handle symlinks properly

Problem:  MS-Windows: doesn't handle symlinks properly
          (Timothy Madden)
Solution: Implement lstat() on MS-Windows
          (author)

lstat() differs from stat() in how it handles symbolic links, the former
doesn't resolve the symlink while the latter does so.

Implement a simple yet effective fallback using Win32 APIs.

fixes #14933
closes: #15014

Co-authored-by: K.Takata <kentkt@csc.jp>
Signed-off-by: LemonBoy <thatlemon@gmail.com>
Signed-off-by: K.Takata <kentkt@csc.jp>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
LemonBoy
2024-06-18 20:43:51 +02:00
committed by Christian Brabandt
parent a821b609f9
commit 23c5ebeb95
6 changed files with 116 additions and 67 deletions

View File

@@ -194,7 +194,11 @@
#ifdef HAVE_LSTAT
# define mch_lstat(n, p) lstat((n), (p))
#else
# define mch_lstat(n, p) mch_stat((n), (p))
# ifdef MSWIN
# define mch_lstat(n, p) vim_lstat((n), (p))
# else
# define mch_lstat(n, p) mch_stat((n), (p))
# endif
#endif
#ifdef VMS