diff --git a/src/libs/utils/ssh/sshconnection.cpp b/src/libs/utils/ssh/sshconnection.cpp index 0efdd0091e6..5ff083e6d2b 100644 --- a/src/libs/utils/ssh/sshconnection.cpp +++ b/src/libs/utils/ssh/sshconnection.cpp @@ -48,6 +48,7 @@ #include #include +#include #include #include @@ -70,15 +71,12 @@ namespace { void doStaticInitializationsIfNecessary() { + QMutexLocker locker(&staticInitMutex); if (!staticInitializationsDone) { - staticInitMutex.lock(); - if (!staticInitializationsDone) { - Botan::LibraryInitializer::initialize("thread_safe=true"); - qRegisterMetaType("Utils::SshError"); - qRegisterMetaType("Utils::SftpJobId"); - staticInitializationsDone = true; - } - staticInitMutex.unlock(); + Botan::LibraryInitializer::initialize("thread_safe=true"); + qRegisterMetaType("Utils::SshError"); + qRegisterMetaType("Utils::SftpJobId"); + staticInitializationsDone = true; } } } // anonymous namespace