diff options
author | John Preston <johnprestonmail@gmail.com> | 2022-05-13 12:26:26 +0400 |
---|---|---|
committer | John Preston <johnprestonmail@gmail.com> | 2022-05-13 12:26:26 +0400 |
commit | b5bc567eb808804b665ee7eb934a4dab9cd37a41 (patch) | |
tree | fa46d7c537826a5b5b07b6150e3f461ac48b3c1b | |
parent | 5f91a97778ca76188ffce7430e3e07b117831d26 (diff) |
Beta version 3.7.5: Fix MSVC x64 Release build.v3.7.5
-rw-r--r-- | Telegram/SourceFiles/passport/passport_form_controller.cpp | 7 | ||||
-rw-r--r-- | Telegram/SourceFiles/passport/passport_panel_controller.cpp | 6 |
2 files changed, 12 insertions, 1 deletions
diff --git a/Telegram/SourceFiles/passport/passport_form_controller.cpp b/Telegram/SourceFiles/passport/passport_form_controller.cpp index 3c3b6b81e6..28fe296c77 100644 --- a/Telegram/SourceFiles/passport/passport_form_controller.cpp +++ b/Telegram/SourceFiles/passport/passport_form_controller.cpp @@ -995,12 +995,17 @@ void FormController::recoverPassword() { .hasRecovery = _password.hasRecovery, .pendingResetDate = _password.pendingResetDate, }; + + // MSVC x64 (non-LTO) Release build fails with a linker error: + // - unresolved external variant::variant(variant const &) + // It looks like a MSVC bug and this works like a workaround. + const auto force = fields.mtp.newSecureSecretAlgo; + const auto box = _view->show(Box<RecoverBox>( &_controller->session().mtp(), &_controller->session(), pattern, fields)); - box->newPasswordSet( ) | rpl::start_with_next([=](const QByteArray &password) { if (password.isEmpty()) { diff --git a/Telegram/SourceFiles/passport/passport_panel_controller.cpp b/Telegram/SourceFiles/passport/passport_panel_controller.cpp index f5f2586557..d4b96b3c6f 100644 --- a/Telegram/SourceFiles/passport/passport_panel_controller.cpp +++ b/Telegram/SourceFiles/passport/passport_panel_controller.cpp @@ -690,6 +690,12 @@ void PanelController::setupPassword() { .hasRecovery = settings.hasRecovery, .pendingResetDate = settings.pendingResetDate, }; + + // MSVC x64 (non-LTO) Release build fails with a linker error: + // - unresolved external variant::variant(variant const &) + // It looks like a MSVC bug and this works like a workaround. + const auto force = fields.mtp.newSecureSecretAlgo; + auto box = show(Box<PasscodeBox>(&_form->window()->session(), fields)); box->newPasswordSet( ) | rpl::start_with_next([=](const QByteArray &password) { |