summaryrefslogtreecommitdiffstats
path: root/src/libs/installer/packagemanagercore.cpp
diff options
context:
space:
mode:
authorKatja Marttila <katja.marttila@qt.io>2022-05-10 07:29:03 +0300
committerKatja Marttila <katja.marttila@qt.io>2022-05-13 14:32:31 +0300
commit82c175d76f1c40868b47f18d95376dce34e0416e (patch)
tree1d7c541f12f5193b381f62556854864c9c513c4e /src/libs/installer/packagemanagercore.cpp
parente0371c9d74a3a9c971f5cae807176226158cfdde (diff)
Fix updating autodependency components
Autodependency components were always forcely updated, even if 'Deselect All' was selected in component selection page. Fixed so that the autodependency component update is updated only when one of its dependants is updated. Task-number: QTIFW-2595 Change-Id: I05ececc45ef32ff80d53b008f839b358158a3316 Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Diffstat (limited to 'src/libs/installer/packagemanagercore.cpp')
-rw-r--r--src/libs/installer/packagemanagercore.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libs/installer/packagemanagercore.cpp b/src/libs/installer/packagemanagercore.cpp
index 1b1ca1eec..8ebaefd62 100644
--- a/src/libs/installer/packagemanagercore.cpp
+++ b/src/libs/installer/packagemanagercore.cpp
@@ -4242,8 +4242,9 @@ bool PackageManagerCore::fetchUpdaterPackages(const PackagesList &remotes, const
return false;
component->loadComponentScript();
- if (!component->isUnstable())
+ if (!component->isUnstable() && component->autoDependencies().isEmpty())
component->setCheckState(Qt::Checked);
+ d->createDependencyHashes(component);
}
// after everything is set up, check installed components
@@ -4252,7 +4253,7 @@ bool PackageManagerCore::fetchUpdaterPackages(const PackagesList &remotes, const
return false;
// even for possible dependency we need to load the script for example to get archives
component->loadComponentScript();
- if (component->isInstalled()) {
+ if (component->isInstalled() && !component->autoDependencies().isEmpty()) {
// since we do not put them into the model, which would force a update of e.g. tri state
// components, we have to check all installed components ourselves
if (!component->isUnstable())