summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/filesystem.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/filesystem.c b/src/filesystem.c
index bed9f81..b674113 100644
--- a/src/filesystem.c
+++ b/src/filesystem.c
@@ -351,7 +351,11 @@ lilv_symlink(const char* oldpath, const char* newpath)
#ifdef _WIN32
ret = !CreateHardLink(newpath, oldpath, 0);
#else
- ret = symlink(oldpath, newpath);
+ char* target = lilv_path_relative_to(oldpath, newpath);
+
+ ret = symlink(target, newpath);
+
+ free(target);
#endif
}
return ret;