From 42f69c18ad2339b275aab47cec3b0d75b5de9a05 Mon Sep 17 00:00:00 2001 From: levlam Date: Tue, 7 Jul 2026 17:34:12 +0300 Subject: Do not create automatic entities from td_api::RichText. --- td/telegram/WebPageBlock.cpp | 27 ++++++--------------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/td/telegram/WebPageBlock.cpp b/td/telegram/WebPageBlock.cpp index 8f34e57a5..6728a33d4 100644 --- a/td/telegram/WebPageBlock.cpp +++ b/td/telegram/WebPageBlock.cpp @@ -278,48 +278,33 @@ class RichText { case td_api::richTextUrl::ID: { auto text = td_api::move_object_as(rich_text); TRY_RESULT(t, get_rich_text(td, std::move(text->text_))); - auto url = t.get_full_text(); if (!clean_input_string(text->url_)) { return Status::Error(400, "Rich text URL must be encoded in UTF-8"); } - if (url == text->url_) { - result.type = Type::AutoUrl; - } else { - result.type = Type::Url; - result.content = std::move(text->url_); - } + result.type = Type::Url; + result.content = std::move(text->url_); result.texts.push_back(std::move(t)); break; } case td_api::richTextEmailAddress::ID: { auto text = td_api::move_object_as(rich_text); TRY_RESULT(t, get_rich_text(td, std::move(text->text_))); - auto email_address = t.get_full_text(); if (!clean_input_string(text->email_address_)) { return Status::Error(400, "Rich text email address must be encoded in UTF-8"); } - if (email_address == text->email_address_) { - result.type = Type::AutoEmailAddress; - } else { - result.type = Type::EmailAddress; - result.content = std::move(text->email_address_); - } + result.type = Type::EmailAddress; + result.content = std::move(text->email_address_); result.texts.push_back(std::move(t)); break; } case td_api::richTextPhoneNumber::ID: { auto text = td_api::move_object_as(rich_text); TRY_RESULT(t, get_rich_text(td, std::move(text->text_))); - auto phone_number = t.get_full_text(); if (!clean_input_string(text->phone_number_)) { return Status::Error(400, "Rich text phone number must be encoded in UTF-8"); } - if (phone_number == text->phone_number_) { - result.type = Type::AutoPhoneNumber; - } else { - result.type = Type::PhoneNumber; - result.content = std::move(text->phone_number_); - } + result.type = Type::PhoneNumber; + result.content = std::move(text->phone_number_); result.texts.push_back(std::move(t)); break; } -- cgit v1.2.3