Ensure that MessageReplyInfo.max_message_id is at least as last_read_message_id.

GitOrigin-RevId: 7c1f38f06e1fe1f687f923387c7baa9b2f5ac7ef
This commit is contained in:
levlam 2020-09-21 16:37:07 +03:00
parent e283ad8ac6
commit 3b97a0944d

View File

@ -50,6 +50,10 @@ MessageReplyInfo::MessageReplyInfo(tl_object_ptr<telegram_api::messageReplies> &
ServerMessageId(reply_info->read_max_id_).is_valid()) {
last_read_inbox_message_id = MessageId(ServerMessageId(reply_info->read_max_id_));
}
if (last_read_inbox_message_id > max_message_id) {
LOG(ERROR) << "Receive last_read_inbox_message_id = " << last_read_inbox_message_id << ", but max_message_id = " << max_message_id;
max_message_id = last_read_inbox_message_id;
}
}
bool MessageReplyInfo::need_update_to(const MessageReplyInfo &other) const {
@ -80,6 +84,14 @@ bool MessageReplyInfo::update_max_message_ids(MessageId other_max_message_id,
last_read_outbox_message_id = other_last_read_outbox_message_id;
result = true;
}
if (last_read_inbox_message_id > max_message_id) {
max_message_id = last_read_inbox_message_id;
result = true;
}
if (last_read_outbox_message_id > max_message_id) {
max_message_id = last_read_outbox_message_id;
result = true;
}
return result;
}