summaryrefslogtreecommitdiffstats
path: root/src/libs/installer/packagemanagercore_p.cpp
diff options
context:
space:
mode:
authorKatja Marttila <katja.marttila@qt.io>2020-12-20 11:31:30 +0200
committerKatja Marttila <katja.marttila@qt.io>2020-12-22 08:38:36 +0200
commita606c9915b8ff1d6001a83aa350400d6286706ff (patch)
tree33fba20f96caf98be8d42382763d0f93f92a9366 /src/libs/installer/packagemanagercore_p.cpp
parentb7df5571e0707f53716fa51d426d5ec31d36af43 (diff)
Introduce ForcedUpdate element for component
Setting ForcedUpdate for component will cause a mandatory update for component if it is installed. Component must be updated before any other component can be updated/installed/removed. Essential components are updated at the same time with ForcedUpdate. Task-number: QTIFW-1565 Change-Id: I6af07fba222371e8cd161d1fec65301450077d86 Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Diffstat (limited to 'src/libs/installer/packagemanagercore_p.cpp')
-rw-r--r--src/libs/installer/packagemanagercore_p.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libs/installer/packagemanagercore_p.cpp b/src/libs/installer/packagemanagercore_p.cpp
index 79e07a9f9..b3c543758 100644
--- a/src/libs/installer/packagemanagercore_p.cpp
+++ b/src/libs/installer/packagemanagercore_p.cpp
@@ -1996,8 +1996,10 @@ void PackageManagerCorePrivate::installComponent(Component *component, double pr
if (!ok && !ignoreError)
throw Error(operation->errorString());
- if ((component->value(scEssential, scFalse) == scTrue) && !m_core->isCommandLineInstance())
+ if (((component->value(scEssential, scFalse) == scTrue) || (component->value(scForcedUpdate, scFalse) == scTrue))
+ && !m_core->isCommandLineInstance()) {
m_needsHardRestart = true;
+ }
}
registerPathsForUninstallation(component->pathsForUninstallation(), component->name());