From 4c2972cb2391ecad30f1015be8b67cae8a03b803 Mon Sep 17 00:00:00 2001 From: Chris Hennes Date: Fri, 27 May 2022 15:24:21 -0500 Subject: [PATCH] AddonManager: Work around thread-safety issue in update --- src/Mod/AddonManager/addonmanager_workers.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Mod/AddonManager/addonmanager_workers.py b/src/Mod/AddonManager/addonmanager_workers.py index c8ed52770002..31754556ebd7 100644 --- a/src/Mod/AddonManager/addonmanager_workers.py +++ b/src/Mod/AddonManager/addonmanager_workers.py @@ -1639,9 +1639,10 @@ def run(self): for repo in self.repos: self.repo_queue.put(repo) - # Following the QNetworkAccessManager model, we'll spawn six threads to process these requests in parallel: + # The original design called for multiple update threads at the same time, but the updater + # itself is not thread-safe, so for the time being only spawn one update thread. workers = [] - for _ in range(6): + for _ in range(1): worker = UpdateSingleWorker(self.repo_queue) worker.success.connect(self.on_success) worker.failure.connect(self.on_failure)