diff options
| author | eregon | 2011-03-20 22:37:25 +0100 | 
|---|---|---|
| committer | Adam Vandenberg | 2011-03-20 19:12:29 -0700 | 
| commit | eb121eeabb78e190b29c5d15da37b157e4e805f6 (patch) | |
| tree | 1bc4fe7186bcf5a38fffdd915449c2ea5fc8bb2a | |
| parent | aa6d7fce29f3fedd7d38c48dfb1171f7fc944838 (diff) | |
| download | homebrew-eb121eeabb78e190b29c5d15da37b157e4e805f6.tar.bz2 | |
use Module#const_get instead of eval
* may be a problem if the constant is scoped (like A::B), but this is not the case
  (const.split('::').inject(Object) { |c, part| c.const_get part } would solve that)
* this was noticed in a comment of 9afc85ad but it has disappeared
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
| -rw-r--r-- | Library/Homebrew/formula.rb | 2 | ||||
| -rwxr-xr-x | bin/brew | 3 | 
2 files changed, 2 insertions, 3 deletions
| diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index e394d0f5c..dd4e03261 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -378,7 +378,7 @@ class Formula      begin        klass_name = self.class_s(name) -      klass = eval(klass_name) +      klass = Object.const_get klass_name      rescue NameError        # TODO really this text should be encoded into the exception        # and only shown if the UI deems it correct to show it @@ -71,10 +71,9 @@ begin    # Add example external commands to PATH before checking.    ENV['PATH'] += ":#{HOMEBREW_REPOSITORY}/Library/Contributions/examples" -    if system "/usr/bin/which -s brew-#{cmd}"      %w[CACHE CELLAR LIBRARY_PATH PREFIX REPOSITORY].each do |e| -      ENV["HOMEBREW_#{e}"] = eval "HOMEBREW_#{e}" +      ENV["HOMEBREW_#{e}"] = Object.const_get "HOMEBREW_#{e}"      end      exec "brew-#{cmd}", *ARGV    elsif require? `/usr/bin/which brew-#{cmd}.rb` | 
