summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--protocols/Telegram/src/utils.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/protocols/Telegram/src/utils.cpp b/protocols/Telegram/src/utils.cpp
index 3c3b68ebb1..c52a044c90 100644
--- a/protocols/Telegram/src/utils.cpp
+++ b/protocols/Telegram/src/utils.cpp
@@ -75,9 +75,12 @@ TD::object_ptr<TD::formattedText> formatBbcodes(const char *pszText)
case BBCODE::UNDERLINE: pNew = TD::make_object<TD::textEntityTypeUnderline>(); break;
}
- for (auto &jt : res->entities_)
+ for (auto &jt : res->entities_) {
if (i1 >= jt->offset_ && i1 < jt->offset_ + jt->length_)
jt->length_ -= it.len1;
+ if (i2 >= jt->offset_ && i2 < jt->offset_ + jt->length_)
+ jt->length_ -= it.len2;
+ }
res->entities_.push_back(TD::make_object<TD::textEntity>(TD::int32(i1), TD::int32(i2 - i1), std::move(pNew)));
}