From 2ee0e4847d0a6fe9b2fe14dca41f3b1e6123a85e Mon Sep 17 00:00:00 2001 From: Arttu Tarkiainen Date: Fri, 25 Sep 2020 15:16:39 +0300 Subject: CLI: Add retry count limit for checking running processes Task-number: QTIFW-1974 Change-Id: I5f2c815a5fe64a2fc2d15e26ff8687b3929292d7 Reviewed-by: Katja Marttila --- src/libs/installer/packagemanagercore_p.cpp | 7 +++++++ 1 file changed, 7 insertions(+) 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 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 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")); } } -- cgit v1.2.3