From 77c20cd82ff651a440341d8580228d7f4e971abd Mon Sep 17 00:00:00 2001 From: levlam Date: Fri, 30 Jul 2021 05:58:24 +0300 Subject: [PATCH] Run channelDifference before messages can be added to the chat. --- td/telegram/MessagesManager.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/td/telegram/MessagesManager.cpp b/td/telegram/MessagesManager.cpp index 63167745d..91175975f 100644 --- a/td/telegram/MessagesManager.cpp +++ b/td/telegram/MessagesManager.cpp @@ -35335,8 +35335,11 @@ bool MessagesManager::need_channel_difference_to_add_message(DialogId dialog_id, } Dialog *d = get_dialog_force(dialog_id, "need_channel_difference_to_add_message"); - if (d == nullptr || d->last_new_message_id == MessageId()) { - return false; + if (d == nullptr) { + return load_channel_pts(dialog_id) > 0; + } + if (d->last_new_message_id == MessageId()) { + return d->pts > 0 && !d->is_channel_difference_finished; } return get_message_id(message_ptr, false) > d->last_new_message_id; @@ -35346,7 +35349,7 @@ void MessagesManager::run_after_channel_difference(DialogId dialog_id, Promise