diff options
author | Katja Marttila <katja.marttila@qt.io> | 2019-01-11 07:21:39 +0200 |
---|---|---|
committer | Katja Marttila <katja.marttila@qt.io> | 2019-01-11 07:52:50 +0000 |
commit | f265c9f43685d842ec5305b4d6b667e55bdb79ba (patch) | |
tree | 7d64f67e83f5f5aa8b9efaf4f2feed6180f90a42 /src/libs | |
parent | afd61c9700ea24569ade2af9e7ec0a268b02b98a (diff) |
Do not allow unstable component install
Unstable component was installed if component had unresolved dependency
and was fetched from category. Fixed so that unstable component which is
not already installed gets never selected in restoreCheckState().
Task-id: QTIFW-1265
Change-Id: I04176d095f6d79b2aabae73b490adc36706f597a
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Diffstat (limited to 'src/libs')
-rw-r--r-- | src/libs/installer/packagemanagercore_p.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libs/installer/packagemanagercore_p.cpp b/src/libs/installer/packagemanagercore_p.cpp index d28f11b43..b5916fbac 100644 --- a/src/libs/installer/packagemanagercore_p.cpp +++ b/src/libs/installer/packagemanagercore_p.cpp @@ -2354,8 +2354,13 @@ void PackageManagerCorePrivate::restoreCheckState() if (m_coreCheckedHash.isEmpty()) return; - foreach (Component *component, m_coreCheckedHash.keys()) + foreach (Component *component, m_coreCheckedHash.keys()) { component->setCheckState(m_coreCheckedHash.value(component)); + // Never allow component to be checked when it is unstable + // and not installed + if (component->isUnstable() && !component->isInstalled()) + component->setCheckState(Qt::Unchecked); + } m_coreCheckedHash.clear(); m_componentsToInstallCalculated = false; |