Pass the link mode to resolve_any_conflicts
This commit is contained in:
parent
5123f0c802
commit
75af625c17
@ -213,15 +213,15 @@ class Keg < Pathname
|
||||
|
||||
protected
|
||||
|
||||
def resolve_any_conflicts dst
|
||||
def resolve_any_conflicts dst, mode
|
||||
# if it isn't a directory then a severe conflict is about to happen. Let
|
||||
# it, and the exception that is generated will message to the user about
|
||||
# the situation
|
||||
if dst.symlink? and dst.directory?
|
||||
src = (dst.parent+dst.readlink).cleanpath
|
||||
keg = Keg.for(src)
|
||||
dst.unlink
|
||||
keg.link_dir(src) { :mkpath }
|
||||
dst.unlink unless mode.dry_run
|
||||
keg.link_dir(src, mode) { :mkpath }
|
||||
return true
|
||||
end
|
||||
rescue NotAKegError
|
||||
@ -301,9 +301,9 @@ class Keg < Pathname
|
||||
when :skip_dir
|
||||
Find.prune
|
||||
when :mkpath
|
||||
dst.mkpath unless resolve_any_conflicts(dst)
|
||||
dst.mkpath unless resolve_any_conflicts(dst, mode)
|
||||
else
|
||||
unless resolve_any_conflicts(dst)
|
||||
unless resolve_any_conflicts(dst, mode)
|
||||
make_relative_symlink dst, src, mode
|
||||
Find.prune
|
||||
end
|
||||
|
Loading…
x
Reference in New Issue
Block a user