aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2011-08-24 14:39:07 +0100
committerAvatar Ciaran McCreesh <ciaran.mccreesh@googlemail.com> 2011-08-24 14:39:07 +0100
commitb2a3083ebcb154f226fd4d17178290e185260150 (patch)
treee66a0ab0282b4246e0435ed4f1913aa42b9ff4a4
parent41fd2129e9bd746ab2eb098e26f6699c662ac882 (diff)
downloadpaludis-b2a3083ebcb154f226fd4d17178290e185260150.tar.gz
paludis-b2a3083ebcb154f226fd4d17178290e185260150.tar.xz
Fix segfault on block inside || ( )
-rw-r--r--paludis/resolver/decider.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/paludis/resolver/decider.cc b/paludis/resolver/decider.cc
index 758b47c..a898cf2 100644
--- a/paludis/resolver/decider.cc
+++ b/paludis/resolver/decider.cc
@@ -1256,7 +1256,8 @@ Decider::find_any_score(
const std::shared_ptr<DependencyReason> reason_unless_block(is_block ? make_null_shared_ptr() : std::make_shared<DependencyReason>(
our_id, make_null_shared_ptr(), our_resolution->resolvent(), dep, _package_dep_spec_already_met(*dep.spec().if_package(), our_id)));
- const std::shared_ptr<const Resolvents> resolvents_unless_block(_get_resolvents_for(spec, reason_unless_block).first);
+ const std::shared_ptr<const Resolvents> resolvents_unless_block(is_block ? make_null_shared_ptr() :
+ _get_resolvents_for(spec, reason_unless_block).first);
/* next: will already be installing */
static_assert(acs_will_be_installing < acs_vacuous_blocker, "acs order changed");