From 0dcbd933c8d3d305395a99b7b1690a187ce5ec8c Mon Sep 17 00:00:00 2001 From: William Pitcock Date: Wed, 21 Feb 2018 15:35:53 +0000 Subject: solver: allow names with only one provider to be autoselected regardless of priority --- src/solver.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/solver.c b/src/solver.c index 91e5958..d27a7a3 100644 --- a/src/solver.c +++ b/src/solver.c @@ -671,11 +671,12 @@ static void select_package(struct apk_solver_state *ss, struct apk_name *name) (!p->pkg->ss.iif_triggered || !p->pkg->ss.tag_ok)) continue; - /* Virtual packages without provider_priority cannot be autoselected */ + /* Virtual packages without provider_priority cannot be autoselected, + * unless there is only one provider */ if (p->version == &apk_null_blob && p->pkg->name->auto_select_virtual == 0 && p->pkg->name->ss.requirers == 0 && - p->pkg->provider_priority == 0) + (p->pkg->provider_priority == 0 && name->providers->num > 1)) continue; if (compare_providers(ss, p, &chosen) > 0) chosen = *p; -- cgit v1.2.3-70-g09d2