diff --git a/src/lib/gui/core/CoreProcess.cpp b/src/lib/gui/core/CoreProcess.cpp index fac7ed578..15005d936 100644 --- a/src/lib/gui/core/CoreProcess.cpp +++ b/src/lib/gui/core/CoreProcess.cpp @@ -317,6 +317,11 @@ void CoreProcess::start(std::optional processModeOption) { using enum Settings::CoreMode; + if (m_processState == ProcessState::Started) { + qCritical("core process already started"); + return; + } + QMutexLocker locker(&m_processMutex); const auto currentMode = Settings::value(Settings::Core::ProcessMode).value(); @@ -325,11 +330,6 @@ void CoreProcess::start(std::optional processModeOption) qInfo().noquote( ) << QString("starting core %1 process (%2 mode)").arg(modeString(), processModeToString(processMode)); - if (m_processState == ProcessState::Started) { - qCritical("core process already started"); - return; - } - // allow external listeners to abort the start process (e.g. licensing issue). setProcessState(ProcessState::Starting); Q_EMIT starting();