From 64df9222ddbe13ebddcd6472007f92541817b453 Mon Sep 17 00:00:00 2001 From: 23rd <23rd@vivaldi.net> Date: Thu, 12 Jun 2025 05:46:12 +0300 Subject: [PATCH] Added handle of flood errors on requesting to check chat invite. Fixed #29368. --- Telegram/SourceFiles/api/api_chat_invite.cpp | 6 ++++++ Telegram/SourceFiles/apiwrap.cpp | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/Telegram/SourceFiles/api/api_chat_invite.cpp b/Telegram/SourceFiles/api/api_chat_invite.cpp index d108a13927..b67e148677 100644 --- a/Telegram/SourceFiles/api/api_chat_invite.cpp +++ b/Telegram/SourceFiles/api/api_chat_invite.cpp @@ -437,6 +437,12 @@ void CheckChatInvite( } }); }, [=](const MTP::Error &error) { + if (MTP::IsFloodError(error)) { + if (const auto strong = weak.get()) { + strong->show(Ui::MakeInformBox(tr::lng_flood_error())); + } + return; + } if (error.code() != 400) { return; } diff --git a/Telegram/SourceFiles/apiwrap.cpp b/Telegram/SourceFiles/apiwrap.cpp index 415a17acba..6a89510329 100644 --- a/Telegram/SourceFiles/apiwrap.cpp +++ b/Telegram/SourceFiles/apiwrap.cpp @@ -324,7 +324,7 @@ void ApiWrap::checkChatInvite( request(base::take(_checkInviteRequestId)).cancel(); _checkInviteRequestId = request(MTPmessages_CheckChatInvite( MTP_string(hash) - )).done(std::move(done)).fail(std::move(fail)).send(); + )).done(std::move(done)).fail(std::move(fail)).handleFloodErrors().send(); } void ApiWrap::checkFilterInvite(