On Windows platforms, we need some logic to emulate symlink(3P) defined by POSIX. As unprivileged symlinks on Windows are a rather new feature, our current implementation is comparatively new and still has some rough edges in special cases. One such case is relative symlinks. While relative symlinks to files in the same directory work as expected, libgit2 currently fails to create reltaive symlinks pointing into other directories. This is due to the fact that we forgot to translate the Unix-style target path to Windows-style. Most importantly, we are currently not converting directory separators from "/" to "\". Fix the issue by calling `git_win32_path_canonicalize` on the target. Add a test that verifies our ability to create such relative links across directories.
Name |
Last commit
|
Last update |
---|---|---|
.. | ||
array.c | Loading commit data... | |
bitvec.c | Loading commit data... | |
buffer.c | Loading commit data... | |
copy.c | Loading commit data... | |
dirent.c | Loading commit data... | |
encoding.c | Loading commit data... | |
env.c | Loading commit data... | |
errors.c | Loading commit data... | |
features.c | Loading commit data... | |
filebuf.c | Loading commit data... | |
ftruncate.c | Loading commit data... | |
futils.c | Loading commit data... | |
hex.c | Loading commit data... | |
iconv.c | Loading commit data... | |
init.c | Loading commit data... | |
link.c | Loading commit data... | |
memmem.c | Loading commit data... | |
mkdir.c | Loading commit data... | |
oid.c | Loading commit data... | |
oidmap.c | Loading commit data... | |
opts.c | Loading commit data... | |
path.c | Loading commit data... | |
pool.c | Loading commit data... | |
posix.c | Loading commit data... | |
pqueue.c | Loading commit data... | |
qsort.c | Loading commit data... | |
regexp.c | Loading commit data... | |
rmdir.c | Loading commit data... | |
sha1.c | Loading commit data... | |
sortedcache.c | Loading commit data... | |
stat.c | Loading commit data... | |
string.c | Loading commit data... | |
strmap.c | Loading commit data... | |
strtol.c | Loading commit data... | |
structinit.c | Loading commit data... | |
useragent.c | Loading commit data... | |
vector.c | Loading commit data... | |
wildmatch.c | Loading commit data... | |
zstream.c | Loading commit data... |