Unlink before rewriting link
ln_sf does the right thing when `dest` is a symlink pointing to a file: the symlink gets overwritten with a link pointing to the new src. But when dest points to a directory, we create a new symlink inside the folder dest points to, which doesn't help us at all.
This commit is contained in:
parent
51c4c84a3f
commit
d0feae0632
@ -17,7 +17,9 @@ class Keg
|
||||
# Don't fix relative symlinks
|
||||
next unless link.absolute?
|
||||
if link.to_s.start_with?(HOMEBREW_CELLAR.to_s) || link.to_s.start_with?(HOMEBREW_PREFIX.to_s)
|
||||
FileUtils.ln_sf(link.relative_path_from(file.parent), file)
|
||||
new_src = link.relative_path_from(file.parent)
|
||||
file.unlink
|
||||
FileUtils.ln_s(new_src, file)
|
||||
end
|
||||
end
|
||||
end
|
||||
|
Loading…
x
Reference in New Issue
Block a user