From edef7481699d4a8fe6c6df7750cb32a76397c701 Mon Sep 17 00:00:00 2001 From: Nils Adermann Date: Fri, 26 Jun 2020 21:55:03 +0200 Subject: [PATCH] Solver: Clarify when/why undecided literals can get skipped in analyze --- src/Composer/DependencyResolver/Solver.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Composer/DependencyResolver/Solver.php b/src/Composer/DependencyResolver/Solver.php index c00beef65..f9f1be37c 100644 --- a/src/Composer/DependencyResolver/Solver.php +++ b/src/Composer/DependencyResolver/Solver.php @@ -386,7 +386,8 @@ class Solver $this->learnedPool[\count($this->learnedPool) - 1][] = $rule; foreach ($rule->getLiterals() as $literal) { - if (!$this->decisions->decided($literal)) { + // multiconflictrule is really a bunch of rules in one, so some may not have finished propagating yet + if ($rule instanceof MultiConflictRule && !$this->decisions->decided($literal)) { continue; }