summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCasey Dahlin <cdahlin@redhat.com>2008-12-15 11:55:19 -0500
committerCasey Dahlin <cdahlin@redhat.com>2008-12-15 11:55:19 -0500
commit5fb3948ea10e63cd04ba47cffed82a2ba897d467 (patch)
tree5771d2d53ef16c32dbdb20003bc066dae27899ce
parent6b4755d56b04d69d453b63b15219448864325b2d (diff)
downloadupstate-5fb3948ea10e63cd04ba47cffed82a2ba897d467.tar.gz
upstate-5fb3948ea10e63cd04ba47cffed82a2ba897d467.tar.xz
upstate-5fb3948ea10e63cd04ba47cffed82a2ba897d467.zip
Require all deps to agree on hold provisions
-rw-r--r--state.rb3
1 files changed, 2 insertions, 1 deletions
diff --git a/state.rb b/state.rb
index 23bf463..88291ae 100644
--- a/state.rb
+++ b/state.rb
@@ -305,7 +305,8 @@ class State
unless candidates == []
candidates = candidates[0].product(*candidates[1..-1]).map{ |x| x.to_set } \
- .select{ |x| x.size == 0 or x.inject(true){ |st, y| st and y.rooted_in x } }
+ .select{ |x| x.size == 0 or x.inject(true){ |st, y| st and y.rooted_in x } } \
+ .select{ |x| x.map{ |y| y.params.to_a }.inject([]){ |a, b| a + b }.uniq.map{ |y| y[0] }.is_uniq? }
else
candidates = [Set.new]
end