Fix inappropriate linking of info files
share/info files were always being linked if they existed, regardless of whether the user had HOMEBREW_KEEP_INFO set. This primarily affects users with software built before 9610ff2e9e06931693f49d4377ee26c0e664c547. This also fixes a bug in Keg#link_dir, in which a file would always be linked if no argument was passed.
This commit is contained in:
parent
f8861daeb9
commit
bc7469c819
@ -75,7 +75,7 @@ class Keg < Pathname
|
|||||||
link_dir('share') do |path|
|
link_dir('share') do |path|
|
||||||
case path.to_s
|
case path.to_s
|
||||||
when 'locale/locale.alias' then :skip_file
|
when 'locale/locale.alias' then :skip_file
|
||||||
when INFOFILE_RX then :info if ENV['HOMEBREW_KEEP_INFO']
|
when INFOFILE_RX then ENV['HOMEBREW_KEEP_INFO'] ? :info : :skip_file
|
||||||
when LOCALEDIR_RX then :mkpath
|
when LOCALEDIR_RX then :mkpath
|
||||||
when *share_mkpaths then :mkpath
|
when *share_mkpaths then :mkpath
|
||||||
else :link
|
else :link
|
||||||
@ -146,7 +146,7 @@ protected
|
|||||||
Find.prune if File.basename(src) == '.DS_Store'
|
Find.prune if File.basename(src) == '.DS_Store'
|
||||||
|
|
||||||
case yield src.relative_path_from(root)
|
case yield src.relative_path_from(root)
|
||||||
when :skip_file
|
when :skip_file, nil
|
||||||
Find.prune
|
Find.prune
|
||||||
when :info
|
when :info
|
||||||
make_relative_symlink dst, src
|
make_relative_symlink dst, src
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user