Prevent long-running threads from deadlocking the program with only 1 CPU

* Fixes #10391
This commit is contained in:
Jonathan White 2024-08-11 19:04:49 -04:00
parent b3bec8b2b4
commit 6a9ed21079

View File

@ -19,6 +19,7 @@
#include <QCommandLineParser>
#include <QDir>
#include <QFile>
#include <QThreadPool>
#include <QWindow>
#include "cli/Utils.h"
@ -64,6 +65,12 @@ int main(int argc, char** argv)
Application::setApplicationVersion(KEEPASSXC_VERSION);
app.setProperty("KPXC_QUALIFIED_APPNAME", "org.keepassxc.KeePassXC");
// HACK: Prevent long-running threads from deadlocking the program with only 1 CPU
// See https://github.com/keepassxreboot/keepassxc/issues/10391
if (QThreadPool::globalInstance()->maxThreadCount() < 2) {
QThreadPool::globalInstance()->setMaxThreadCount(2);
}
QCommandLineParser parser;
parser.setApplicationDescription(QObject::tr("KeePassXC - cross-platform password manager"));
parser.addPositionalArgument(