aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosh Hagins2016-10-25 03:41:35 -0400
committerJosh Hagins2016-10-25 03:41:37 -0400
commit652c5bc865ebda25ead84c5cab04a4688b4e2b9a (patch)
tree5ca89f340d76dad1fc494a3267541b5a05a03aef
parent79e8cdd3ed8c7f5dee573648d55eb3d3e305de19 (diff)
downloadbrew-652c5bc865ebda25ead84c5cab04a4688b4e2b9a.tar.bz2
formula_installer: fix regression in #1253
Apparently `cellar :any_skip_relocation` doesn't actually mean we can skip relocation, at least for text files.
-rw-r--r--Library/Homebrew/formula_installer.rb9
-rw-r--r--Library/Homebrew/keg_relocate.rb4
2 files changed, 6 insertions, 7 deletions
diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb
index 006db8f8a..c25702059 100644
--- a/Library/Homebrew/formula_installer.rb
+++ b/Library/Homebrew/formula_installer.rb
@@ -762,12 +762,11 @@ class FormulaInstaller
end
keg = Keg.new(formula.prefix)
+ tab = Tab.for_keg(keg)
+ Tab.clear_cache
- unless formula.bottle_specification.skip_relocation?
- tab = Tab.for_keg(keg)
- Tab.clear_cache
- keg.replace_placeholders_with_locations tab.changed_files
- end
+ skip_linkage = formula.bottle_specification.skip_relocation?
+ keg.replace_placeholders_with_locations tab.changed_files, skip_linkage: skip_linkage
Pathname.glob("#{formula.bottle_prefix}/{etc,var}/**/*") do |path|
path.extend(InstallRenamed)
diff --git a/Library/Homebrew/keg_relocate.rb b/Library/Homebrew/keg_relocate.rb
index 712408b8b..41686b1bb 100644
--- a/Library/Homebrew/keg_relocate.rb
+++ b/Library/Homebrew/keg_relocate.rb
@@ -40,7 +40,7 @@ class Keg
replace_text_in_files(relocation)
end
- def replace_placeholders_with_locations(files)
+ def replace_placeholders_with_locations(files, skip_linkage: false)
relocation = Relocation.new(
old_prefix: PREFIX_PLACEHOLDER,
old_cellar: CELLAR_PLACEHOLDER,
@@ -49,7 +49,7 @@ class Keg
new_cellar: HOMEBREW_CELLAR.to_s,
new_repository: HOMEBREW_REPOSITORY.to_s
)
- relocate_dynamic_linkage(relocation)
+ relocate_dynamic_linkage(relocation) unless skip_linkage
replace_text_in_files(relocation, files: files)
end