summaryrefslogtreecommitdiffstats
path: root/src/libs/installer/packagemanagercore.cpp
diff options
context:
space:
mode:
authorArttu Tarkiainen <arttu.tarkiainen@qt.io>2020-05-28 13:48:26 +0300
committerArttu Tarkiainen <arttu.tarkiainen@qt.io>2020-06-01 09:39:31 +0000
commitcb159728b68e7f0d799e77570fb1d92b86abb6ce (patch)
tree921b5125f9adb4ad94fe8ddda56576a6836ea86e /src/libs/installer/packagemanagercore.cpp
parent40a0fdde6208687df7c7e81a2255363d3524110f (diff)
CLI: Do not run updater if there are no updates for selected components
Task-number: QTIFW-1818 Change-Id: I13dceeeaf294c689a90fbe5fe74586d7a117ea50 Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Diffstat (limited to 'src/libs/installer/packagemanagercore.cpp')
-rw-r--r--src/libs/installer/packagemanagercore.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/libs/installer/packagemanagercore.cpp b/src/libs/installer/packagemanagercore.cpp
index 8f282bf9d..885604135 100644
--- a/src/libs/installer/packagemanagercore.cpp
+++ b/src/libs/installer/packagemanagercore.cpp
@@ -2272,11 +2272,11 @@ bool PackageManagerCore::updateComponentsSilently(const QStringList &componentsT
essentialUpdatesFound = true;
}
if (!essentialUpdatesFound) {
- int componentToUpdateCount = componentsToUpdate.count();
+ const bool userSelectedComponents = !componentsToUpdate.isEmpty();
QList<Component*> componentsToBeUpdated;
//Mark components to be updated
foreach (Component *comp, componentList) {
- if (componentToUpdateCount == 0) { // No components given, update all
+ if (!userSelectedComponents) { // No components given, update all
comp->setCheckState(Qt::Checked);
} else {
//Collect the componets to list which we want to update
@@ -2288,6 +2288,12 @@ bool PackageManagerCore::updateComponentsSilently(const QStringList &componentsT
}
}
}
+ // No updates for selected components, do not run updater
+ if (userSelectedComponents && componentsToBeUpdated.isEmpty()) {
+ qCDebug(QInstaller::lcInstallerInstallLog)
+ << "No updates available for selected components.";
+ return false;
+ }
foreach (Component *componentToUpdate, componentsToBeUpdated)
componentToUpdate->setCheckState(Qt::Checked);
}