diff --git a/td/telegram/LinkManager.cpp b/td/telegram/LinkManager.cpp index 65f1e9abf..ceee4869c 100644 --- a/td/telegram/LinkManager.cpp +++ b/td/telegram/LinkManager.cpp @@ -1084,10 +1084,10 @@ LinkManager::LinkInfo LinkManager::get_link_info(Slice link) { if (ends_with(host, ".t.me") && host.size() >= 9 && host.find('.') == host.size() - 5) { Slice subdomain(&host[0], host.size() - 5); if (is_valid_username(subdomain) && subdomain != "addemoji" && subdomain != "addlist" && - subdomain != "addstickers" && subdomain != "addtheme" && subdomain != "auth" && subdomain != "confirmphone" && - subdomain != "invoice" && subdomain != "joinchat" && subdomain != "login" && subdomain != "proxy" && - subdomain != "setlanguage" && subdomain != "share" && subdomain != "socks" && subdomain != "web" && - subdomain != "k" && subdomain != "z") { + subdomain != "addstickers" && subdomain != "addtheme" && subdomain != "auth" && subdomain != "boost" && + subdomain != "confirmphone" && subdomain != "contact" && subdomain != "invoice" && subdomain != "joinchat" && + subdomain != "login" && subdomain != "proxy" && subdomain != "setlanguage" && subdomain != "share" && + subdomain != "socks" && subdomain != "web" && subdomain != "a" && subdomain != "k" && subdomain != "z") { result.type_ = LinkType::TMe; result.query_ = PSTRING() << '/' << subdomain << http_url.query_; return result; diff --git a/test/link.cpp b/test/link.cpp index ab4c24bc2..eaed240f3 100644 --- a/test/link.cpp +++ b/test/link.cpp @@ -1248,12 +1248,19 @@ TEST(Link, parse_internal_link_part4) { parse_internal_link("aaa_.t.me/12345?single", nullptr); parse_internal_link("0aaa.t.me/12345?single", nullptr); parse_internal_link("_aaa.t.me/12345?single", nullptr); + parse_internal_link("a.t.me", nullptr); + parse_internal_link("b.t.me", nullptr); + parse_internal_link("k.t.me", nullptr); + parse_internal_link("z.t.me", nullptr); + parse_internal_link("web.t.me", nullptr); parse_internal_link("addemoji.t.me", nullptr); parse_internal_link("addlist.t.me", nullptr); parse_internal_link("addstickers.t.me", nullptr); parse_internal_link("addtheme.t.me", nullptr); parse_internal_link("auth.t.me", nullptr); + parse_internal_link("boost.t.me", nullptr); parse_internal_link("confirmphone.t.me", nullptr); + parse_internal_link("contact.t.me", nullptr); parse_internal_link("invoice.t.me", nullptr); parse_internal_link("joinchat.t.me", nullptr); parse_internal_link("login.t.me", nullptr);