diff options
author | Katja Marttila <katja.marttila@qt.io> | 2020-05-13 10:15:33 +0300 |
---|---|---|
committer | Katja Marttila <katja.marttila@qt.io> | 2020-05-15 13:27:31 +0300 |
commit | f1b4b60f3a4a89ece8e5b292077cdcfd09cc2f50 (patch) | |
tree | d56dd2e19adeeac74e8305d3de7fb183af0ea8b0 /src/libs/installer/packagemanagercore_p.cpp | |
parent | 329df4d2f2fb51891a60c5df00d1bb7ddd04277b (diff) |
Fix interrupt() call from script
Installer can be interrupted with interrupt() call from script. The
interrupt was not correctly handled causing the installer to continue
install successfully.
Change-Id: I6c211ef985cc1a06445249bde27cdff5678a8ed0
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Diffstat (limited to 'src/libs/installer/packagemanagercore_p.cpp')
-rw-r--r-- | src/libs/installer/packagemanagercore_p.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/libs/installer/packagemanagercore_p.cpp b/src/libs/installer/packagemanagercore_p.cpp index eeca32857..c3fd07ac4 100644 --- a/src/libs/installer/packagemanagercore_p.cpp +++ b/src/libs/installer/packagemanagercore_p.cpp @@ -2510,11 +2510,14 @@ bool PackageManagerCorePrivate::calculateComponentsAndRun() { QString htmlOutput; bool componentsOk = m_core->calculateComponents(&htmlOutput); - qCDebug(QInstaller::lcInstallerInstallLog).noquote() << htmlToString(htmlOutput); - if (componentsOk && acceptLicenseAgreements()) { - return m_core->run(); + bool success = false; + if (statusCanceledOrFailed()) { + qCDebug(QInstaller::lcInstallerInstallLog) << "Installation canceled."; + } else if (componentsOk && acceptLicenseAgreements()) { + qCDebug(QInstaller::lcInstallerInstallLog).noquote() << htmlToString(htmlOutput); + success = m_core->run(); } - return false; + return success; } bool PackageManagerCorePrivate::acceptLicenseAgreements() |