aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/cmd
diff options
context:
space:
mode:
authorBrandon Black2012-07-28 11:36:08 -0700
committerMax Howell2012-08-06 22:02:38 -0400
commitbcde6432f3b7e42870ee4b3ee7a6eb06021c62e7 (patch)
tree9fe9a7a34007810034d4783b584062c47ce7d1b0 /Library/Homebrew/cmd
parent1f622843844e5d52d598c2f8be360a13416454c9 (diff)
downloadbrew-bcde6432f3b7e42870ee4b3ee7a6eb06021c62e7.tar.bz2
Fix issues with writable? detection in brew doctor
Closes Homebrew/homebrew#13689. Signed-off-by: Max Howell <mxcl@me.com> There are subtle distinctions between writable? and writable_real? we don't understand precisely why we need this, but it fixes the bugs :/
Diffstat (limited to 'Library/Homebrew/cmd')
-rw-r--r--Library/Homebrew/cmd/doctor.rb6
-rw-r--r--Library/Homebrew/cmd/install.rb4
2 files changed, 5 insertions, 5 deletions
diff --git a/Library/Homebrew/cmd/doctor.rb b/Library/Homebrew/cmd/doctor.rb
index aef52da87..1d46405b9 100644
--- a/Library/Homebrew/cmd/doctor.rb
+++ b/Library/Homebrew/cmd/doctor.rb
@@ -279,7 +279,7 @@ def __check_subdir_access base
target.find do |d|
next unless d.directory?
- cant_read << d unless d.writable?
+ cant_read << d unless d.writable_real?
end
cant_read.sort!
@@ -300,7 +300,7 @@ end
def check_access_usr_local
return unless HOMEBREW_PREFIX.to_s == '/usr/local'
- unless Pathname('/usr/local').writable? then <<-EOS.undent
+ unless Pathname('/usr/local').writable_real? then <<-EOS.undent
The /usr/local directory is not writable.
Even if this directory was writable when you installed Homebrew, other
software may change permissions on this directory. Some versions of the
@@ -322,7 +322,7 @@ end
def __check_folder_access base, msg
folder = HOMEBREW_PREFIX+base
- if folder.exist? and not folder.writable?
+ if folder.exist? and not folder.writable_real?
<<-EOS.undent
#{folder} isn't writable.
This can happen if you "sudo make install" software that isn't managed
diff --git a/Library/Homebrew/cmd/install.rb b/Library/Homebrew/cmd/install.rb
index 2d2d2903a..aa7987048 100644
--- a/Library/Homebrew/cmd/install.rb
+++ b/Library/Homebrew/cmd/install.rb
@@ -33,8 +33,8 @@ module Homebrew extend self
end
def check_writable_install_location
- raise "Cannot write to #{HOMEBREW_CELLAR}" if HOMEBREW_CELLAR.exist? and not HOMEBREW_CELLAR.writable?
- raise "Cannot write to #{HOMEBREW_PREFIX}" unless HOMEBREW_PREFIX.writable? or HOMEBREW_PREFIX.to_s == '/usr/local'
+ raise "Cannot write to #{HOMEBREW_CELLAR}" if HOMEBREW_CELLAR.exist? and not HOMEBREW_CELLAR.writable_real?
+ raise "Cannot write to #{HOMEBREW_PREFIX}" unless HOMEBREW_PREFIX.writable_real? or HOMEBREW_PREFIX.to_s == '/usr/local'
end
def check_xcode