aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorJack Nagel2013-12-02 12:44:28 -0600
committerJack Nagel2013-12-02 12:47:50 -0600
commit69dcc2592ca58fec117b4a7fd78c72596af3ba50 (patch)
tree9e61b278ab4f6a08283da5359808f5634cfec8e5 /Library
parentbcfafca56b86058c0cc5ac9d420c364206cb2110 (diff)
downloadbrew-69dcc2592ca58fec117b4a7fd78c72596af3ba50.tar.bz2
Don't mutate deps collection when expanding requirements
Fixes Homebrew/homebrew-science#213.
Diffstat (limited to 'Library')
-rwxr-xr-xLibrary/Homebrew/build.rb6
-rw-r--r--Library/Homebrew/formula_installer.rb2
2 files changed, 3 insertions, 5 deletions
diff --git a/Library/Homebrew/build.rb b/Library/Homebrew/build.rb
index e75a6841e..eb0677a59 100755
--- a/Library/Homebrew/build.rb
+++ b/Library/Homebrew/build.rb
@@ -61,10 +61,8 @@ class Build
def initialize(f)
@f = f
- # Expand requirements before dependencies, as requirements
- # may add dependencies if a default formula is activated.
- @reqs = expand_reqs
@deps = expand_deps
+ @reqs = expand_reqs
end
def post_superenv_hacks
@@ -88,7 +86,7 @@ class Build
elsif req.build? && dependent != f
Requirement.prune
elsif req.satisfied? && req.default_formula? && (dep = req.to_dependency).installed?
- dependent.deps << dep
+ deps << dep
Requirement.prune
end
end
diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb
index ddab16532..0a0f61aeb 100644
--- a/Library/Homebrew/formula_installer.rb
+++ b/Library/Homebrew/formula_installer.rb
@@ -186,7 +186,7 @@ class FormulaInstaller
elsif req.satisfied?
Requirement.prune
elsif req.default_formula?
- dependent.deps << req.to_dependency
+ unsatisfied_deps << req.to_dependency
Requirement.prune
else
puts "#{dependent}: #{req.message}"