aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar David Leverton <levertond@googlemail.com> 2007-06-01 01:16:01 +0000
committerAvatar David Leverton <levertond@googlemail.com> 2007-06-01 01:16:01 +0000
commitf11a2a7439646c242e061d19df6ac480758d0054 (patch)
tree780d3a9f9182872ca7326b03bf522baae625bb23
parentb5fd5eb668ba8769e7b2808b7e3e65883b8b3264 (diff)
downloadpaludis-f11a2a7439646c242e061d19df6ac480758d0054.tar.gz
paludis-f11a2a7439646c242e061d19df6ac480758d0054.tar.xz
Fix || ( ) when all children are unavailable and the first is subject to --dl-override-masks.
-rw-r--r--paludis/dep_list/dep_list.cc1
-rw-r--r--paludis/dep_list/dep_list_TEST.cc27
2 files changed, 28 insertions, 0 deletions
diff --git a/paludis/dep_list/dep_list.cc b/paludis/dep_list/dep_list.cc
index ecea461..0c5b00b 100644
--- a/paludis/dep_list/dep_list.cc
+++ b/paludis/dep_list/dep_list.cc
@@ -737,6 +737,7 @@ DepList::AddVisitor::visit_sequence(const AnyDepSpec &,
continue;
d->add_not_top_level(*c, destinations);
+ return;
}
}
}
diff --git a/paludis/dep_list/dep_list_TEST.cc b/paludis/dep_list/dep_list_TEST.cc
index 7706ce3..d4a67f8 100644
--- a/paludis/dep_list/dep_list_TEST.cc
+++ b/paludis/dep_list/dep_list_TEST.cc
@@ -1269,6 +1269,33 @@ namespace test_cases
} test_dep_list_61;
/**
+ * \test Test DepList resolution behaviour.
+ *
+ */
+ struct DepListTestCase62 : DepListTestCase<62>
+ {
+ void set_options(DepListOptions & opts)
+ {
+ opts.override_masks += dl_override_tilde_keywords;
+ }
+
+ void populate_repo()
+ {
+ repo->add_version("cat", "one", "1")->deps_interface->set_build_depend("|| ( cat/two cat/three )");
+ repo->add_version("cat", "two", "1")->ebuild_interface->set_keywords("~test");
+ repo->add_version("cat", "three", "2")->ebuild_interface->set_keywords("~test");
+ }
+
+ void populate_expected()
+ {
+ merge_target = "cat/one";
+ expected.push_back("cat/two-1:0::repo(M)");
+ expected.push_back("cat/two-1:0::repo");
+ expected.push_back("cat/one-1:0::repo");
+ }
+ } test_dep_list_62;
+
+ /**
* \test Test DepList transactional add behaviour.
*
*/