diff options
-rw-r--r-- | src/libs/installer/installercalculator.cpp | 5 | ||||
-rw-r--r-- | tests/auto/installer/solver/tst_solver.cpp | 14 |
2 files changed, 13 insertions, 6 deletions
diff --git a/src/libs/installer/installercalculator.cpp b/src/libs/installer/installercalculator.cpp index 4e0d7fdfa..7767b5d96 100644 --- a/src/libs/installer/installercalculator.cpp +++ b/src/libs/installer/installercalculator.cpp @@ -95,8 +95,7 @@ QString InstallerCalculator::componentsToInstallError() const void InstallerCalculator::realAppendToInstallComponents(Component *component, const QString &version) { - if (!component->isUnstable() && - (!component->isInstalled(version) || component->updateRequested())) { + if (!component->isInstalled(version) || component->updateRequested()) { m_orderedComponentsToInstall.append(component); m_toInstallComponentIds.insert(component->name()); } @@ -173,7 +172,7 @@ bool InstallerCalculator::appendComponentToInstall(Component *component, const Q m_componentsToInstallError.append(errorMessage); if (component->packageManagerCore()->settings().allowUnstableComponents()) { component->setUnstable(); - return true; + continue; } else { return false; } diff --git a/tests/auto/installer/solver/tst_solver.cpp b/tests/auto/installer/solver/tst_solver.cpp index 7ae502a5e..d1c3aaa14 100644 --- a/tests/auto/installer/solver/tst_solver.cpp +++ b/tests/auto/installer/solver/tst_solver.cpp @@ -32,6 +32,7 @@ #include <uninstallercalculator.h> #include <componentchecker.h> #include <packagemanagercore.h> +#include <settings.h> #include <QTest> @@ -208,9 +209,16 @@ private slots: core->appendRootComponent(componentA); core->appendRootComponent(componentB); - QTest::newRow("Installer resolved") << core - << (QList<Component *>() << componentA) - << (QList<Component *>()); + if (core->settings().allowUnstableComponents()) { + QTest::newRow("Installer resolved") << core + << (QList<Component *>() << componentA) + << (QList<Component *>() << componentA); + } else { + QTest::newRow("Installer resolved") << core + << (QList<Component *>() << componentA) + << (QList<Component *>()); + } + } void unresolvedDependencyVersion() |