diff options
author | Katja Marttila <katja.marttila@qt.io> | 2022-11-29 14:19:21 +0200 |
---|---|---|
committer | Katja Marttila <katja.marttila@qt.io> | 2022-12-01 10:19:01 +0200 |
commit | 853678f811414e7bef5bbffa5a6e7ffcb1e2fa8f (patch) | |
tree | 3200cae0faf6cfaf74e3921ae120edd00f683124 /src/libs/installer/uninstallercalculator.cpp | |
parent | 7ccada5c9cfaa9916cd73dc9d217670fc9031677 (diff) |
Fix replaced removal on update
If component is replaced with a component which is installed as
autodependency to other component, the replaced component was not
uninstalled on update.
Task-number: QTIFW-2887
Change-Id: Ibad04df765191f0e399c6f6020cdf081dba5d803
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Diffstat (limited to 'src/libs/installer/uninstallercalculator.cpp')
-rw-r--r-- | src/libs/installer/uninstallercalculator.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/libs/installer/uninstallercalculator.cpp b/src/libs/installer/uninstallercalculator.cpp index 4c07d81e3..2f029630f 100644 --- a/src/libs/installer/uninstallercalculator.cpp +++ b/src/libs/installer/uninstallercalculator.cpp @@ -69,7 +69,8 @@ void UninstallerCalculator::appendComponentToUninstall(Component *component) Component *depComponent = m_core->componentByName(dependencyComponent); if (!depComponent) continue; - if (depComponent->isInstalled() && !m_componentsToUninstall.contains(depComponent)) { + if (depComponent->isInstalled() && !m_componentsToUninstall.contains(depComponent) + && !m_core->orderedComponentsToInstall().contains(depComponent)) { appendComponentToUninstall(depComponent); insertUninstallReason(depComponent, UninstallerCalculator::Dependent, component->name()); } |