diff --git a/td/telegram/cli.cpp b/td/telegram/cli.cpp index 26873f6b7..ec3f0b28c 100644 --- a/td/telegram/cli.cpp +++ b/td/telegram/cli.cpp @@ -1652,8 +1652,16 @@ class CliClient final : public Actor { static td_api::object_ptr as_formatted_text( const string &text, vector> entities = {}) { if (entities.empty() && !text.empty()) { - auto parsed_text = execute( - td_api::make_object(text, td_api::make_object(2))); + Slice unused_reserved_characters("#+-={}.!"); + string new_text; + for (auto c : text) { + if (unused_reserved_characters.find(c) != Slice::npos) { + new_text += '\\'; + } + new_text += c; + } + auto parsed_text = execute(td_api::make_object( + new_text, td_api::make_object(2))); if (parsed_text->get_id() == td_api::formattedText::ID) { return td_api::move_object_as(parsed_text); }