From e65c0827a4e038be37d170282586bd8d69492125 Mon Sep 17 00:00:00 2001 From: levlam Date: Tue, 17 May 2022 16:27:46 +0300 Subject: [PATCH] Drop dangling replies to yet unsent messages. --- td/telegram/MessagesManager.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/td/telegram/MessagesManager.cpp b/td/telegram/MessagesManager.cpp index b7a55f6a8..30c78129c 100644 --- a/td/telegram/MessagesManager.cpp +++ b/td/telegram/MessagesManager.cpp @@ -14533,6 +14533,11 @@ FullMessageId MessagesManager::on_get_message(MessageInfo &&message_info, bool f update_message(d, old_message.get(), std::move(new_message), &need_update_dialog_pos, false); new_message = std::move(old_message); + if (new_message->reply_to_message_id != MessageId() && new_message->reply_to_message_id.is_yet_unsent()) { + LOG(INFO) << "Drop reply to " << new_message->reply_to_message_id; + new_message->reply_to_message_id = MessageId(); + } + set_message_id(new_message, message_id); send_update_message_send_succeeded(d, old_message_id, new_message.get()); @@ -30831,6 +30836,11 @@ FullMessageId MessagesManager::on_send_message_success(int64 random_id, MessageI sent_message->have_previous = true; sent_message->have_next = true; + if (sent_message->reply_to_message_id != MessageId() && sent_message->reply_to_message_id.is_yet_unsent()) { + LOG(INFO) << "Drop reply to " << sent_message->reply_to_message_id; + sent_message->reply_to_message_id = MessageId(); + } + send_update_message_send_succeeded(d, old_message_id, sent_message.get()); bool need_update = true;