diff options
| author | Jack Nagel | 2014-04-05 12:17:19 -0500 | 
|---|---|---|
| committer | Jack Nagel | 2014-04-05 12:17:19 -0500 | 
| commit | a26601dc2b9ef33491e0df50e64899b823c56b78 (patch) | |
| tree | 767f896aea23999a5f4b0598298f5bd08609b573 | |
| parent | bfeb0a491345bbe231de7009f6b6d8fe8d17634b (diff) | |
| download | homebrew-a26601dc2b9ef33491e0df50e64899b823c56b78.tar.bz2 | |
Avoid realpath where it is not necessary
Symlinks in opt and LinkedKegs point directly at a keg in the cellar, so
only resolving one symlink should suffice, and make it clear what path
we are actually interested in.
| -rwxr-xr-x | Library/Homebrew/build.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/caveats.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/reinstall.rb | 4 | ||||
| -rw-r--r-- | Library/Homebrew/cmd/upgrade.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/extend/ARGV.rb | 4 | ||||
| -rw-r--r-- | Library/Homebrew/formula.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/formula_installer.rb | 6 | ||||
| -rw-r--r-- | Library/Homebrew/keg.rb | 4 | 
8 files changed, 13 insertions, 13 deletions
| diff --git a/Library/Homebrew/build.rb b/Library/Homebrew/build.rb index 6e873bcb5..b9ff6703a 100755 --- a/Library/Homebrew/build.rb +++ b/Library/Homebrew/build.rb @@ -213,7 +213,7 @@ end  def fixopt f    path = if f.linked_keg.directory? and f.linked_keg.symlink? -    f.linked_keg.realpath +    f.linked_keg.resolved_path    elsif f.prefix.directory?      f.prefix    elsif (kids = f.rack.children).size == 1 and kids.first.directory? diff --git a/Library/Homebrew/caveats.rb b/Library/Homebrew/caveats.rb index 26cb4cee4..a876a716c 100644 --- a/Library/Homebrew/caveats.rb +++ b/Library/Homebrew/caveats.rb @@ -25,7 +25,7 @@ class Caveats    def keg      @keg ||= [f.prefix, f.opt_prefix, f.linked_keg].map do |d| -      Keg.new(d.realpath) rescue nil +      Keg.new(d.resolved_path) rescue nil      end.compact.first    end diff --git a/Library/Homebrew/cmd/reinstall.rb b/Library/Homebrew/cmd/reinstall.rb index 393662b0c..24bffc5c5 100644 --- a/Library/Homebrew/cmd/reinstall.rb +++ b/Library/Homebrew/cmd/reinstall.rb @@ -13,8 +13,8 @@ module Homebrew extend self      notice += " with #{options * ", "}" unless options.empty?      oh1 notice -    if (opt_link = f.opt_prefix).exist? -      keg = Keg.new(opt_link.realpath) +    if f.opt_prefix.directory? +      keg = Keg.new(f.opt_prefix.resolved_path)        backup keg      end diff --git a/Library/Homebrew/cmd/upgrade.rb b/Library/Homebrew/cmd/upgrade.rb index ece2431ff..205de517d 100644 --- a/Library/Homebrew/cmd/upgrade.rb +++ b/Library/Homebrew/cmd/upgrade.rb @@ -54,7 +54,7 @@ module Homebrew extend self    end    def upgrade_formula f -    outdated_keg = Keg.new(f.linked_keg.realpath) if f.linked_keg.directory? +    outdated_keg = Keg.new(f.linked_keg.resolved_path) if f.linked_keg.directory?      fi = FormulaInstaller.new(f)      fi.options             = Tab.for_formula(f).used_options diff --git a/Library/Homebrew/extend/ARGV.rb b/Library/Homebrew/extend/ARGV.rb index 7e331752b..6923c2faf 100644 --- a/Library/Homebrew/extend/ARGV.rb +++ b/Library/Homebrew/extend/ARGV.rb @@ -35,9 +35,9 @@ module HomebrewArgvExtension        opt_prefix = HOMEBREW_PREFIX/"opt"/name        if opt_prefix.symlink? && opt_prefix.directory? -        Keg.new(opt_prefix.realpath) +        Keg.new(opt_prefix.resolved_path)        elsif linked_keg_ref.symlink? && linked_keg_ref.directory? -        Keg.new(linked_keg_ref.realpath) +        Keg.new(linked_keg_ref.resolved_path)        elsif dirs.length == 1          Keg.new(dirs.first)        elsif (prefix = Formula.factory(canonical_name).prefix).directory? diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index 4dcd2a7c2..9c83a6523 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -493,7 +493,7 @@ class Formula        },        "revision" => revision,        "installed" => [], -      "linked_keg" => (linked_keg.realpath.basename.to_s if linked_keg.exist?), +      "linked_keg" => (linked_keg.resolved_path.basename.to_s if linked_keg.exist?),        "keg_only" => keg_only?,        "dependencies" => deps.map(&:name),        "conflicts_with" => conflicts.map(&:name), diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb index 1b20f8c0f..0bd71c08a 100644 --- a/Library/Homebrew/formula_installer.rb +++ b/Library/Homebrew/formula_installer.rb @@ -147,7 +147,7 @@ class FormulaInstaller      if f.linked_keg.directory?        # some other version is already installed *and* linked        raise CannotInstallFormulaError, <<-EOS.undent -        #{f}-#{f.linked_keg.realpath.basename} already installed +        #{f}-#{f.linked_keg.resolved_path.basename} already installed          To install this version, first `brew unlink #{f}'        EOS      end @@ -360,7 +360,7 @@ class FormulaInstaller      tab = Tab.for_formula(df)      if df.linked_keg.directory? -      linked_keg = Keg.new(df.linked_keg.realpath) +      linked_keg = Keg.new(df.linked_keg.resolved_path)        linked_keg.unlink      end @@ -545,7 +545,7 @@ class FormulaInstaller    end    def link -    if f.linked_keg.directory? and f.linked_keg.realpath == f.prefix +    if f.linked_keg.directory? and f.linked_keg.resolved_path == f.prefix        opoo "This keg was marked linked already, continuing anyway"        # otherwise Keg.link will bail        f.linked_keg.unlink diff --git a/Library/Homebrew/keg.rb b/Library/Homebrew/keg.rb index 3ec28136c..2287df465 100644 --- a/Library/Homebrew/keg.rb +++ b/Library/Homebrew/keg.rb @@ -87,7 +87,7 @@ class Keg < Pathname    end    def linked? -    linked_keg_record.directory? and self == linked_keg_record.realpath +    linked_keg_record.directory? && self == linked_keg_record.resolved_path    end    def completion_installed? shell @@ -125,7 +125,7 @@ class Keg < Pathname    end    def link mode=OpenStruct.new -    raise "Cannot link #{fname}\nAnother version is already linked: #{linked_keg_record.realpath}" if linked_keg_record.directory? +    raise "Cannot link #{fname}\nAnother version is already linked: #{linked_keg_record.resolved_path}" if linked_keg_record.directory?      ObserverPathnameExtension.reset_counts! | 
