From 33ad5b431f02e62311b7d751d78102263388e5da Mon Sep 17 00:00:00 2001 From: levlam Date: Tue, 9 Jul 2024 15:24:11 +0300 Subject: [PATCH] Improve can_be_paid. --- td/telegram/MessagesManager.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/td/telegram/MessagesManager.cpp b/td/telegram/MessagesManager.cpp index 70c11a926..d0729983a 100644 --- a/td/telegram/MessagesManager.cpp +++ b/td/telegram/MessagesManager.cpp @@ -38399,8 +38399,13 @@ Result MessagesManager::get_invoice_message_id(MessageFullId me return Status::Error(400, "Message not found"); } auto content_type = m->content->get_type(); - if (content_type != MessageContentType::Invoice && content_type != MessageContentType::PaidMedia) { - return Status::Error(400, "Message has no invoice"); + if (content_type != MessageContentType::Invoice) { + if (content_type != MessageContentType::PaidMedia) { + return Status::Error(400, "Message has no invoice"); + } + if (!need_poll_message_content_extended_media(m->content.get())) { + return Status::Error(400, "Message media has already been bought"); + } } if (m->message_id.is_scheduled()) { return Status::Error(400, "Wrong scheduled message identifier");