diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb index e75ce424ea..08107df5af 100644 --- a/Library/Homebrew/formula_installer.rb +++ b/Library/Homebrew/formula_installer.rb @@ -1156,17 +1156,6 @@ on_request: installed_on_request?, options:) def link(keg) Formula.clear_cache - unless link_keg - begin - keg.optlink(verbose: verbose?, overwrite: overwrite?) - rescue Keg::LinkError => e - ofail "Failed to create #{formula.opt_prefix}" - puts "Things that depend on #{formula.full_name} will probably not build." - puts e - end - return - end - cask_installed_with_formula_name = begin Cask::CaskLoader.load(formula.name, warn: false).installed? rescue Cask::CaskUnavailableError, Cask::CaskInvalidError @@ -1175,6 +1164,17 @@ on_request: installed_on_request?, options:) if cask_installed_with_formula_name ohai "#{formula.name} cask is installed, skipping link." + @link_keg = false + end + + unless link_keg + begin + keg.optlink(verbose: verbose?, overwrite: overwrite?) + rescue Keg::LinkError => e + ofail "Failed to create #{formula.opt_prefix}" + puts "Things that depend on #{formula.full_name} will probably not build." + puts e + end return end