diff options
author | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2020-09-25 15:16:39 +0300 |
---|---|---|
committer | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2020-10-09 09:01:45 +0300 |
commit | 2ee0e4847d0a6fe9b2fe14dca41f3b1e6123a85e (patch) | |
tree | 179ae07efda651a03eb162e2f9477e8012775e93 | |
parent | 203e82b09c27a783a0032a9239abb67f8817c01f (diff) |
CLI: Add retry count limit for checking running processes
Task-number: QTIFW-1974
Change-Id: I5f2c815a5fe64a2fc2d15e26ff8687b3929292d7
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
-rw-r--r-- | src/libs/installer/packagemanagercore_p.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/libs/installer/packagemanagercore_p.cpp b/src/libs/installer/packagemanagercore_p.cpp index 52e732e49..7ed6d5a29 100644 --- a/src/libs/installer/packagemanagercore_p.cpp +++ b/src/libs/installer/packagemanagercore_p.cpp @@ -942,6 +942,7 @@ void PackageManagerCorePrivate::stopProcessesForUpdates(const QList<Component*> if (processList.isEmpty()) return; + uint retryCount = 5; while (true) { const QStringList processes = checkRunningProcessesFromList(processList); if (processes.isEmpty()) @@ -959,6 +960,12 @@ void PackageManagerCorePrivate::stopProcessesForUpdates(const QList<Component*> m_core->setCanceled(); throw Error(tr("Installation canceled by user")); } + if (!m_core->isCommandLineInstance()) + continue; + + // Do not allow infinite retries with cli instance + if (--retryCount == 0) + throw Error(tr("Retry count exceeded")); } } |