diff --git a/Linphone/core/App.cpp b/Linphone/core/App.cpp index 44d860a48..1a1ae7783 100644 --- a/Linphone/core/App.cpp +++ b/Linphone/core/App.cpp @@ -390,6 +390,23 @@ void App::setSelf(QSharedPointer(me)) { mCoreModelConnection->invokeToCore([this, n] { mEventCountNotifier->notifyEventCount(n); }); }); + // Config error message + mCoreModelConnection->makeConnectToModel( + &CoreModel::configuringStatus, [this](const std::shared_ptr &core, + linphone::ConfiguringState status, const std::string &message) { + mustBeInLinphoneThread(log().arg(Q_FUNC_INFO)); + if (status == linphone::ConfiguringState::Failed) { + mCoreModelConnection->invokeToCore([this, message]() { + mustBeInMainThread(log().arg(Q_FUNC_INFO)); + //: Error + Utils::showInformationPopup( + tr("info_popup_error_title"), + tr("info_popup_configuration_failed_message").arg(Utils::coreStringToAppString(message)), + false); + }); + } + }); + //--------------------------------------------------------------------------------------------- mCliModelConnection = SafeConnection::create(me, CliModel::getInstance()); mCliModelConnection->makeConnectToCore(&App::receivedMessage, [this](int, const QByteArray &byteArray) { @@ -471,22 +488,6 @@ void App::initCore() { if (mParser->isSet("verbose")) QtLogger::enableVerbose(true); if (mParser->isSet("qt-logs-only")) QtLogger::enableQtOnly(true); - // Config error message - connect(CoreModel::getInstance().get(), &CoreModel::configuringStatus, this, - [this](const std::shared_ptr &core, linphone::ConfiguringState status, - const std::string &message) { - mustBeInLinphoneThread(log().arg(Q_FUNC_INFO)); - if (CoreModel::getInstance()->mConfigStatus == linphone::ConfiguringState::Failed) { - QMetaObject::invokeMethod(thread(), [this, message]() { - mustBeInMainThread(log().arg(Q_FUNC_INFO)); - //: Error - Utils::showInformationPopup( - tr("info_popup_error_title"), - tr("info_popup_configuration_failed_message").arg(Utils::coreStringToAppString(message)), - false); - }); - } - }); QMetaObject::invokeMethod( mLinphoneThread->getThreadId(), [this, settings = mSettings]() mutable {