Also detect updates resulting from feature rules rather than update rules
parent
2056c4c732
commit
85d38c653f
|
@ -1089,9 +1089,16 @@ class Solver
|
||||||
|
|
||||||
// !wanted & installed
|
// !wanted & installed
|
||||||
if (!$literal->isWanted() && isset($this->installedPackageMap[$package->getId()])) {
|
if (!$literal->isWanted() && isset($this->installedPackageMap[$package->getId()])) {
|
||||||
$updateRule = $this->packageToUpdateRule[$package->getId()];
|
$literals = array();
|
||||||
|
|
||||||
foreach ($updateRule->getLiterals() as $updateLiteral) {
|
if (isset($this->packageToUpdateRule[$package->getId()])) {
|
||||||
|
$literals = array_merge($literals, $this->packageToUpdateRule[$package->getId()]->getLiterals());
|
||||||
|
}
|
||||||
|
if (isset($this->packageToFeatureRule[$package->getId()])) {
|
||||||
|
$literals = array_merge($literals, $this->packageToFeatureRule[$package->getId()]->getLiterals());
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach ($literals as $updateLiteral) {
|
||||||
if (!$updateLiteral->equals($literal)) {
|
if (!$updateLiteral->equals($literal)) {
|
||||||
$installMeansUpdateMap[$updateLiteral->getPackageId()] = $package;
|
$installMeansUpdateMap[$updateLiteral->getPackageId()] = $package;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue