summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorArttu Tarkiainen <arttu.tarkiainen@qt.io>2020-09-25 15:16:39 +0300
committerArttu Tarkiainen <arttu.tarkiainen@qt.io>2020-10-09 09:01:45 +0300
commit2ee0e4847d0a6fe9b2fe14dca41f3b1e6123a85e (patch)
tree179ae07efda651a03eb162e2f9477e8012775e93 /src
parent203e82b09c27a783a0032a9239abb67f8817c01f (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>
Diffstat (limited to 'src')
-rw-r--r--src/libs/installer/packagemanagercore_p.cpp7
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"));
}
}