Parcourir la source

Handle array candidates in whatProvides

Nils Adermann il y a 11 ans
Parent
commit
aa74818fe0
1 fichiers modifiés avec 4 ajouts et 1 suppressions
  1. 4 1
      src/Composer/DependencyResolver/Pool.php

+ 4 - 1
src/Composer/DependencyResolver/Pool.php

@@ -268,7 +268,10 @@ class Pool
         $nameMatch = false;
 
         foreach ($candidates as $candidate) {
-            if ($this->whitelist !== null && !isset($this->whitelist[$candidate->getId()])) {
+            if ($this->whitelist !== null && (
+                (is_array($candidate) && isset($candidate['id']) && !isset($this->whitelist[$candidate['id']])) ||
+                (is_object($candidate) && !isset($this->whitelist[$candidate->getId()]))
+            )) {
                 continue;
             }
             switch ($this->match($candidate, $name, $constraint)) {